X-Achse Abständen(ticks) für die Graphen der Pandas DataFrame
Ich versuche mit den Zecken (Zeit -) Schritte auf der x-Achse auf meinem matplotlib graph eines Pandas DataFrame. Mein Ziel ist es, mit der ersten Spalte der DataFrame zu verwenden, als die Zecken, aber ich habe nicht erfolgreich gewesen, so weit.
Meine versuche bisher waren:
Versuch 1:
#See 'xticks'
data_df[header_names[1]].plot(ax=ax, title="Roehrig Shock Data", style="-o", legend=True, xticks=data_df[header_names[0]])
Versuch 2:
ax.xaxis.set_ticks(data_df[header_names[0]])
header_names
ist nur eine Liste der Spaltenüberschriften und der dataframe ist wie folgt:
Compression Velocity Compression Force
1 0.000213 6.810879
2 0.025055 140.693200
3 0.050146 158.401500
4 0.075816 171.050200
5 0.101011 178.639500
6 0.126681 186.228800
7 0.150925 191.288300
8 0.176597 198.877500
9 0.202269 203.937000
10 0.227466 208.996500
11 0.252663 214.056000
Und hier die Daten im CSV-format:
Compression Velocity,Compression Force
0.0002126891606,6.810879
0.025055073079999997,140.6932
0.050145696,158.4015
0.07581600279999999,171.0502
0.1010109232,178.6395
0.12668120459999999,186.2288
0.1509253776,191.2883
0.1765969798,198.8775
0.2022691662,203.937
0.2274659662,208.9965
0.2526627408,214.056
Und hier ist eine Implementierung des Lesens und Plotten den graph:
data_df = pd.read_csv(file).astype(float)
fig = Figure()
ax = fig.add_subplot(111)
ax.set_xlabel("Velocity (m/sec)")
ax.set_ylabel("Force (N)")
data_df[header_names[1]].plot(ax=ax, title="Roehrig Shock Data", style="-o", legend=True)
Den Strom-Diagramm sieht wie folgt aus:
Die x-Achse ist derzeit die Anzahl der Zeilen in der dataframe (z.B. 12) vielmehr als die tatsächlichen Werte innerhalb der ersten Spalte.
Gibt es eine Möglichkeit, die Daten aus der ersten Spalte in der dataframe, die als ticks/- Intervalle/- Zeit-Schritten die x-Achse?
df.plot(x='Column_you_want_as_x', y='Column_you_want_as_y', xticks=d['Column_you_want_as_x'])
?Ich hatte nicht versucht vorbei alle 3 als Parameter zur gleichen Zeit, aber leider das hat nicht funktioniert entweder. Danke für den Vorschlag aber.
Es funktioniert für mich, aber ich weiß nicht, ob meine Daten anders eingestellt ist, weil Sie keine sample-Daten. Können Sie self-enthalten Beispiel-code und Beispiel-Daten demonstriert das problem?
Siehe edit oben.
Mein Vorschlag funktioniert bei mir. Siehe meine Antwort.
InformationsquelleAutor aus_lacy | 2014-12-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese funktioniert bei mir:
Ich habe gerade versucht es nach dem hinzufügen einer weiteren Spalte der DataFrame, und es funktioniert immer noch. Beachten Sie, dass ich vorbei x und y Argumente zu
plot
zu sagen, welche Spalten zum Plotten.InformationsquelleAutor BrenBarn