2016-06-30 50 views
0

列標籤我有以下dict字典值作爲matplotlib

packetsNeeded = { u'hydrogen': 150, 
        u'helium': 143, 
        u'lithium': 122} 

我使用matplotlib繪製爲各鍵和上述字典的值的柱狀圖。我設法使用下面的代碼繪製條形圖:

import matplotlib.pyplot as pplot 

pplot.bar(range(len(packetsNeeded)), packetsNeeded.values(), 
     width = 0.75, align = 'center') 
pplot.xticks(range(len(packetsNeeded)), packetsNeeded.keys()) 

pplot.xlabel("X label") 
pplot.ylabel("Y label") 
pplot.title("title here") 
pplot.show() 

我可以顯示X軸在詞典中提到的密鑰,但我想要的垂直條形圖,顯示字典的值在每個酒吧。

我試圖

pplot.yticks(range(len(packetsNeeded), packets.needed.values()) 

但情節如下: yticks messes the y axis up!!

什麼是顯示在列標籤的字典正道

我試過如下:

for a, b in zip(key(), value()): 
    pplot.text(a, b, str(b)) 

但我碰到pro blems

+0

不知道你想要什麼行也許你意味着什麼。如果你使用你的代碼,你應該得到y軸上的值(0到160)。你想把這些值寫在條上嗎? – Aguy

回答

1

沿

for key, x in zip(packetsNeeded.keys(), range(len(packetsNeeded))): 
    pplot.text(x, packetsNeeded[key], packetsNeeded[key]) 
+0

我想要在條上顯示值。例如氫氣棒應該有它的價值。 –

+0

然後上面的答案會告訴你如何去做 – Aguy