2016-12-12 126 views
1

我有Python中的熊貓數據框,看起來像這樣:蟒蛇繪製數據幀

Jan 15 Feb 15 March 15 April 15 
1 val  val  val  val 
2 val  val  val  val 
3 val  val  val  nan 
4 val  nan  val  nan 
5 val  nan  nan  nan 

我要繪製圖表如下。 X軸是月(Jan 15 | Feb 15 | March 15 | April 15),和酒吧都像這樣:

Jan 15: 5 
Feb 15: 3 
March 15: 4 
April 15: 2 

^這是每個月非空值的計數。

任何關於如何繪製matplotlib或其他任何幫助的幫助?

編輯:在df中的值是這樣的元組:(val1, val2)

回答

2

您需要countSeries.plot.bar

import matplotlib.pyplot as plt 
df.count().plot.bar() 
plt.show() 

解決方案與Series.plot

import matplotlib.pyplot as plt 
df.count().plot(kind='bar') 
plt.show() 

graph

+0

有沒有可以製作它的標籤雲?例如,而不是圖表,在標籤雲中繪製月份,最大的字體飛蛾會是數據最多的那個? – TheDaJon

+0

嗯,在熊貓這是不可能的,我不確定是否在matplotlib。我發現[這個解決方案](http://peekaboo-vision.blogspot.sk/2012/11/a-wordcloud-in-python.html),試試吧。 – jezrael

2

這將返回一系列與您要繪製的數據:

df.count() 

這將繪製它:

df.count().plot.bar(); # the semicolon will suppress output in Jupyter 

編輯:使它的柱狀圖。

+0

如何繪製圖表?它打印:'' – TheDaJon

+0

我假設你在Jupyter。您必須通過運行'%matplotlib inline'來啓用內嵌圖表一次。 – IanS

+1

'import matplotlib.pyplot as plt'。然後在df.count()。plot()之後,添加'plt.show()'。如果你使用jupyter筆記本,你也可以使用魔術'%matplotlib inline'。 @IanS:在你的圖表中加入'kind ='bar'' –