[英]How to plot periodic data with matplotlib
我的數據記錄系統的中心值為[0,10,20,... 350],並且假定從中心點均勻地收集數據。 因此,我想繪制以這種方式合並的直方圖:[-5,5],[5,15],[15,25] ... [345,355]。
問題在於,數據存儲在[0,360]中,這會使初始和結束扇區僅占數據的一半。
簡而言之,當我要繪制[-5,5]的數據時,繪制的實際數據只有大小的一半 ,因為[-5,5]被分為[0,5]和[355,360]。 你可以看一下0
, 355
下面的PIC箱。
bins=np.arange(-5, 360 + 10, 10)
df['dir'].hist(bins=bins, alpha=0.5, figsize=(15, 3))
我的問題是:
half size
問題? -50
開始,是否有辦法擺脫它? 1:如果您不希望Roadrunner建議使用漂亮的極坐標圖,而是希望保留線性條形圖,則應將0值> 355分配給0 bin,例如,
wrapped = np.array(df['dir'])
wrapped[wrapped > 355] = 0
plt.hist(wrapped, bins=np.arange(0,370,10), align='left')
(align ='left'從-5..5、5..15等繪制您的垃圾箱,給定的數據值范圍為0..355)
2:現在使用以下方法消除左側的不需要的空間:
plt.axis('tight')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.