In einem Pandas-Balkendiagramm kann das Beschriften von Balken mit den entsprechenden numerischen Werten die Datenvisualisierung verbessern und Einblick in die Daten des Diagramms geben . Um dieses Problem anzugehen, betrachten wir einen DataFrame mit zufälligen Werten:
import pandas as pd import numpy as np df = pd.DataFrame({'A': np.random.rand(2), 'B': np.random.rand(2)}, index=['value1', 'value2'])
Herausforderung: Wie können wir die Balken mit gerundeten numerischen Werten versehen, ähnlich wie im Beispielbild?
Lösung:
Greifen Sie direkt auf die Achsenfelder zu, um die Leiste abzurufen height:
import matplotlib.pyplot as plt ax = df.plot(kind='bar') for p in ax.patches: height = p.get_height() label = round(height, 2) ax.annotate(label, (p.get_x() * 1.005, p.get_height() * 1.005))
Diese Methode ermittelt die Höhe des Balkens vom Patch-Objekt und beschriftet den Balken mit dem gerundeten Wert. Passen Sie die Zeichenfolgenformatierung und -versätze an, um die Anmerkungen wie gewünscht zu zentrieren.
Codebeispiel:
import pandas as pd import numpy as np import matplotlib.pyplot as plt df = pd.DataFrame({'A': np.random.rand(2), 'B': np.random.rand(2)}, index=['value1', 'value2']) ax = df.plot(kind='bar') for p in ax.patches: height = p.get_height() label = round(height, 2) ax.annotate(label, (p.get_x() * 1.005, p.get_height() * 1.005)) plt.show()
Das obige ist der detaillierte Inhalt vonWie kommentiere ich Pandas-Balkendiagramme mit gerundeten numerischen Werten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!