R 限制ggplot2中Y轴的显示值

R 限制ggplot2中Y轴的显示值,r,ggplot2,R,Ggplot2,有人能解释为什么下面的代码没有切断Y轴吗?我试图将0切到50000,并且仅显示高于该值的值。我试过这个基于 数据(iris) iris2将代码更改为: ggplot(data=iris2, aes(x=Sepal.Length, y=Sepal.Width, fill=Sepal.Length)) + ylim(c(5000, 150000)) +geom_bar(stat="identity") 您只需要ylim,不需要坐标笛卡尔坐标,因为在条形图中,比较的是从0开始的条形长度。这是一个例子

有人能解释为什么下面的代码没有切断Y轴吗?我试图将0切到50000,并且仅显示高于该值的值。我试过这个基于

数据(iris)
iris2将代码更改为:

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

您只需要ylim,不需要坐标笛卡尔坐标

,因为在条形图中,比较的是从0开始的条形长度。这是一个例子,其中
ggplot2
被故意设计为使其难以制作。在对您的示例进行一些实验后,似乎使用了一些限制,但方式比较松散。如果我限制在100k,它最多可以绘制110个。与较低的数字类似,我对我在
+ylim(5000150000)+
@Gregor中看到的东西感到很有趣(并且有点害怕),我同意,但我正在努力展示一个小的差异,在我的具体情况下,每个值都在5000以上,可能会变化100左右。问题是你看不到barsRight之间的微小变化——这很好地表明你不应该使用条形图。只需使用线图或散点图即可!尝试过了,但它将我的点向上移动,没有改变Y轴,这是ggplot2非常奇怪的行为,您有最新版本的ggplot2和R吗?
ggplot(data=iris2, aes(x=Sepal.Length, y=Sepal.Width, fill=Sepal.Length)) + ylim(c(5000, 150000)) +geom_bar(stat="identity")