code: def test_fight_plotter() -> None:
      df = utils.Selector.read_csv(
          Path(__file__).parent / "sphere_perf_example.csv"
      ).select(
          optimizer_name=[
              "OnePlusOneOptimizer",
              "HaltonSearch",
              "Powell",
          ]
      )
      winrates = plotting.FightPlotter.winrates_from_selection(
          df, ["noise_level", "budget"]
      )
      # check data
      np.testing.assert_array_equal(
          winrates.index,
          [
              "Powell (1/3:75.0% +- 4.4)",
              "OnePlusOneOptimizer (2/3:58.3% +- 5.0)",
              "Halton (3/3:16.7% +- 3.8)",
          ],
      )
      np.testing.assert_array_equal(
          winrates.columns,
          [
              "Powell (6/6)",
              "OnePlusOneOptimizer (6/6)",
              "HaltonSearch (6/6)",
          ],
      )
      np.testing.assert_almost_equal(
          winrates, [[0.5, 0.75, 1], [0.25, 0.5, 1], [0, 0, 0.5]]
      )
      # plot
      plotter = plotting.FightPlotter(winrates)
      with patch("matplotlib.pyplot.Figure.savefig"):
          plotter.save("should_not_exist.png")
  
imports: from .None import plotting
  from unittest.mock import patch
  from pathlib import Path
  import typing
  import pytest
  import numpy
  import pandas
  import matplotlib
  from nevergrad.common import testing
  from .None import utils
label_desc: Use image node_id 4 for calling a global function with example usage: test_fight_plotter() without return types