2017-02-19 209 views
0

有人可以解釋爲什麼下面的代碼不能切斷Y軸嗎?我正在嘗試切斷0到50000,並僅顯示高於此值。我試過此基礎上this post限制ggplot2中的Y軸顯示值

data(iris) 
iris2<-iris[,1:4]*5000 

ggplot(data=iris2, aes(x=Sepal.Length, y=Sepal.Width, fill=Sepal.Length)) + 
    coord_cartesian(ylim = c(5000, 150000)) + 
    geom_bar(stat="identity") 
+1

在0.這是一個'ggplot2'是故意設計的實例,使它很難做出[一個誤導的情節](http://cloudfront.mediamatters.org/static/uploader/image/2014/03/31/obamacareenrollment- fncchart.jpg)。 – Gregor

+0

經過您的示例的一些實驗後,似乎使用了限制,但以一種寬鬆的方式。如果我限制到100k,那麼它的圖表可能會達到大約110個。類似於較低的數字 – tjjjohnson

+0

我對我用+ ylim(5000,150000)+' –

回答

0

你的代碼更改爲:

ggplot(data=iris2, aes(x=Sepal.Length, y=Sepal.Width, fill=Sepal.Length)) + ylim(c(5000, 150000)) +geom_bar(stat="identity") 

你只需要ylim,因爲在條形圖你比較酒吧的長度開始coord_cartesian是沒有必要的

+0

試過了,但它在不改變Y軸的情況下移動了我的點數 – Rilcon42

+0

這是ggplot2非常奇怪的行爲,你有最新的ggplot2和R的版本? –