2013-02-19 39 views
2

我想創建一個箱線圖,其中每個x值有兩個箱線圖旁邊的對方,有點像這樣:創建雙boxplots-即兩盒每個x值

enter image description here

是這可能嗎?如果是這樣,我該怎麼做?

+2

+1繪圖 – 2013-02-19 07:56:56

+0

圖紙不利於搜索,以便相關的東西把它稱爲將不勝感激。 – 2013-02-19 09:05:15

回答

4

我不知道是否有這種情節的名稱,但你可以創建只是通過使用pyplot.bloxplot函數,並通過關鍵字positions輕微移動框。下面是我們爲左,右框和相應的X位置兩組數據的一個例子

x = np.array([1000,2000]) 
data1 = np.array([np.random.normal(loc=0.5,size=100),np.random.normal(loc=1.5,size=100)]).T 
data2 = np.array([np.random.normal(loc=2.5,size=100),np.random.normal(loc=0.75,size=100)]).T 
plt.figure() 
plt.boxplot(data1,0,'',positions=x-100,widths=150) 
plt.boxplot(data2,0,'',positions=x+100,widths=150) 
plt.xlim(500,2500) 
plt.xticks(x) 
plt.show() 

第一。接下來,我們繪製每個數據集合,指定位置爲x,但分別左移和右移。 注意:由於我們的x位置相距很遠,我們還必須使用widths關鍵字來調整寬度。現在我們設置正確的x軸限制,然後最終用我們想要的x-tick位置替換x-tick位置。

它產生這樣的輸出:

enter image description here