Wie kann ich in matplotlib mehrere Labels gleichzeitig zuweisen?

Ich habe folgenden Datensatz:

x = [0, 1, 2, 3, 4]
y = [ [0, 1, 2, 3, 4],
      [5, 6, 7, 8, 9],
      [9, 8, 7, 6, 5] ]

Jetzt zeichne ich es mit:

import matplotlib.pyplot as plt
plt.plot(x, y)

Ich möchte jedoch die 3 y-Datensätze mit diesem Befehl beschriften, was einen Fehler auslöst, wenn.legend() wird genannt:

lineObjects = plt.plot(x, y, label=['foo', 'bar', 'baz'])
plt.legend()

File "./plot_nmos.py", line 33, in <module>
  plt.legend()
...
AttributeError: 'list' object has no attribute 'startswith'

Wenn ich das inspizierelineObjects:

>>> lineObjects[0].get_label()
['foo', 'bar', 'baz']
>>> lineObjects[1].get_label()
['foo', 'bar', 'baz']
>>> lineObjects[2].get_label()
['foo', 'bar', 'baz']
Frage

Gibt es eine elegante Möglichkeit, mehrere Bezeichnungen zuzuweisen, indem Sie einfach die.plot() Methode?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage