[英]Matplotlib Histogram: Green and Blue Bins
我正在使用pyplot來制作直方圖。 這是我正在做的事情:
import numpy as np
import pylab as pl
A = {my dataset as a dictionary: different numbers and their frequencies}
numbers = A.keys()
frequencies = A.values()
plot = np.transpose(np.array([[numbers,frequencies]])
n = <my bins-value here>
pl.hist(plot,bins=n,log=True)
pl.show()
我注意到,無論我指定的箱數是多少,第二個箱子總是綠色,如下所示。 它為什么是綠色的? 這是什么意思? 我該如何防止這種情況發生?
你真的不能使用hist
的方式。 hist
計算給定原始數據的值頻率。 您已經計算了頻率,並且您嘗試將它們傳遞給hist
,但這不是輸入hist
需要的。 當您傳入二維數組時, hist
會顯示多個直方圖,每列一個。 記錄如下:
可以通過x提供多個數據作為可能不同長度([x0,x1,...])的數據集列表,或者作為2-D nararray,其中每列是數據集。
所以你得到一個條形圖(藍色的)用於你的標簽,另一個(綠色的)用於它們的計數。 據推測,所有的綠色都集中在一起,因為它們的范圍要小得多。
如果您從原始數據生成頻率,則可以將原始數據傳遞給hist
以獲取直方圖。 如果您只有直方圖數據,則應使用matplotlib的bar
函數自行使用直方圖數據制作條形圖。 但是,你必須自己裝箱。 最重要的是你可以讓hist
做所有事情,或者什么都不做:你可以讓它計算頻率和箱子並做圖,或者你可以計算頻率和箱子並做圖,但你不能只是自己計算頻率,並讓hist
只進行分箱和繪圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.