2012-07-23 45 views
3

這裏是一個箱線圖:如何讓geom_boxplot在計算盒子之前應用y-限制?

qplot(cyl, mpg, data=mtcars) + 
    geom_boxplot() + 
    scale_y_continuous() 

,看起來像這樣: enter image description here

現在我添加限制,以y軸:

qplot(cyl, mpg, data=mtcars) + 
    geom_boxplot() + 
    scale_y_continuous(limits=c(0,20)) 

和整個畫面的變化:

enter image description here

我如何獲得與第一張相同的照片,只需使用顯示y = 0至20的「視口」?

而且..第二張照片是什麼?看起來實際上有數據缺失(例如:cyl = 4的3-4點)。

+2

'coord_cartesian()' – joran 2012-07-23 17:17:36

+0

'cyl = 4'沒有任何觀察結果顯示'mpg <20'。 – joran 2012-07-23 17:18:40

+0

@joran:在頂部圖上,似乎有3-4個黑點。 – dfrankow 2012-07-23 17:20:18

回答

9

從joran的評論,這部作品:

qplot(cyl, mpg, data=mtcars) + 
    geom_boxplot() + 
    coord_cartesian(ylim=c(0,20)) 

the docs

有放大的情節顯示的方式有兩種:用秤或 座標系。他們以兩種截然不同的方式工作。

設置刻度上的限制將丟棄在這些限制內的不是 的所有數據。這等同於繪製 原始數據

的子集設置的座標系上的限制執行可視縮放 的數據是不變的,我們只是查看 原始圖的一小部分。

謝謝喬蘭!

+0

您可能會發現使用'factor(cyl)'而不是'cyl'有幫助。 – joran 2012-07-23 17:30:36

相關問題