2015-04-27 40 views
1

我試圖根據以下熊貓表製作特殊x軸請求的頻率繪圖。帶有連續整數標記爲x軸的python繪圖頻率

 pos    freq 
0  67     1 
1 285     5 
2 288     1 
3 397     4 
4 592     1 
5 640     3 

由於我的頻率本身是整數(pos列),我希望只有正常的連續數字標籤的x軸。然而,簡單的柱狀圖:

plot_pos=pos_freq.plot(kind='bar',x='pos') 

我只會被標記爲67,285,288,397,592,640。相反,x軸,我想x軸是一系列連續的整數/間隔,例如60,65,70,75,...,645,650;並且頻率條仍顯示在正確的位置。

我不確定在這一點上吧柱狀圖是一個不錯的選擇,我是新來的在python中繪圖。 (我可以在Excel中執行;或者我可以添加另一個X軸......)任何有關更好方法的建議都會被讚賞!

回答

1

隨着matplotlib

import matplotlib.pyplot as plt 
plt.bar(pos_freq['pos'], pos_freq['freq']) 
plt.show() 
+0

謝謝!我對繪圖的不同選項感到困惑。感謝您指出matplotlib模塊:) – Helene

1

快速和骯髒的:

pos_freq.reindex(range(pos_freq['pos'].min(), pos_freq['pos'].max())).plot(kind='bar') 
+1

一些進一步的解釋會有所幫助! –

+0

謝謝@ 8one6,但我無法運行你的代碼 - 我想你可能會錯過一個「)」。 – Helene

+0

現在試試........ – 8one6

1

我無法得到與大熊貓dataframe.plot的X標籤(),所以我使用matplotlib直接

import matplotlib.pyplot as plt 
ticks = range(0,700,5) #this could whatever interval you wanted 
fig, ax = plt.subplots() 
ax.bar(pos_freq["pos"],pos_freq["freq"]) 
ax.set_xticks(ticks) 

並且您可能希望使這個更大一點所有那些額外的蜱

fig.set_size_inches(30,10.5) 
+0

感謝您的解決方案,我非常喜歡你提到的技巧:) – Helene