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:

X-Achse Abständen(ticks) für die Graphen der Pandas DataFrame
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?

Haben Sie versucht, die 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

Schreibe einen Kommentar