web-dev-qa-db-ja.com

バープロットのy軸を再スケーリングすると、バーが消えます:R ggplot2

Y軸がゼロより大きい値で始まるggplot2を使用して、バープロットを作成しようとしています。

3つの異なる農場でのニンジンの長さに関する仮想データセットの平均値と標準誤差があるとします。

carrots<-NULL
carrots$Mean<-c(270,250,240)
carrots$SE<-c(3,4,5)
carrots$Farm<-c("Plains","Hill","Valley")
carrots<-data.frame(carrots)

基本的なプロットを作成します。

p<-ggplot(carrots,aes(y=Mean,x=Farm)) +
   geom_bar(fill="slateblue") +
   geom_errorbar(aes(ymin=Mean-SE,ymax=Mean+SE), width=0)
p

これは素晴らしいことですが、スケールが0から0になると、長さの違いを見ることは困難です。したがって、y軸をc(200,300)のようなものに再スケーリングしたいと思います。しかし、私がこれをしようとすると:

p+scale_y_continuous('Length (mm)', limit=c(200,300))

エラーバーは残りますが、バーは消えます。

私の質問は、ggplot2を使用してこの調整された軸で棒グラフをプロットすることは可能ですか?

あなたが提供できる助けや提案をありがとう。

42
susjoh

これを試して

p + coord_cartesian(ylim=c(200,300))

座標系に制限を設定すると、視覚的なズームが実行されます。データは変更されず、元のプロットのごく一部を表示します。

barplot example

68
rcs