2016-03-22 4 views
4

Ich habe versucht, mit label=None in den Plot-Befehl, in diesem Fall matplotlib wählte den Schlüssel der Daten als Bezeichnung. Ich finde dieses Verhalten nicht intuitiv und erwarte die vollständige Kontrolle über das Label, wenn ich es explizit festlege. Wie kann ich die Beschriftung eines Plots mit Daten aus einem pandas Datenrahmen deaktivieren?Wie kann ich das Etikett beim Plotten von Pandas-Daten deaktivieren?

Hier ist ein kleines Beispiel, die das Verhalten zeigt:

import matplotlib.pyplot as plt 
import pandas as pd 

df = pd.DataFrame({'x': [0, 1], 'y': [0, 1]}) 
plt.plot(df['x'], df['y'], label=None) 
plt.legend(loc='best') 

Die in der folgenden Handlung führt:

enter image description here

Falls es darauf ankommt, bin ich zur Zeit matplotlib Version mit 1.5.1 und Pandas Version 0.18.0 im folgenden Python installiert von Macports: Python 2.7.11 (Standard, 1. März 2016, 18:40:10) [GCC 4.2.1 Kompatibel Apple LLVM 7.0.2 (klingelt 700.1.81)] auf darwin

+0

Du kannst eine leere Zeichenfolge übergeben: 'plt.plot (df ['x'], df ['y'], label = '')' – EdChum

+0

Kannst du das als Antwort posten, damit ich es akzeptieren kann? –

Antwort

3

Wenn Sie einen leeren String dann ergibt sich in diesem Diagramm:

import matplotlib.pyplot as plt 
import pandas as pd 

df = pd.DataFrame({'x': [0, 1], 'y': [0, 1]}) 
plt.plot(df['x'], df['y'], label='') 
plt.legend(loc='best') 

enter image description here

1

Einfach ein leeres Etikett übergeben. Matplotlib macht in diesem Fall keinen Legendeneintrag. Das Argument label=None ist der Standardwert, der von der Plotfunktion erkannt wird, und besagt, dass ein Etikett erstellt werden soll.

(Natürlich in diesem Fall könnte man einfach nicht plt.legend verwenden ...)

Verwandte Themen