如何在计算方框之前让geom_boxplot应用y-limits?

dfr*_*kow 3 r ggplot2

这是一个箱线图:

qplot(cyl, mpg, data=mtcars) +
  geom_boxplot() +
  scale_y_continuous()
Run Code Online (Sandbox Code Playgroud)

看起来像这样: 在此输入图像描述

现在我为y轴添加限制:

qplot(cyl, mpg, data=mtcars) +
  geom_boxplot() +
  scale_y_continuous(limits=c(0,20))
Run Code Online (Sandbox Code Playgroud)

整个画面变化:

在此输入图像描述

我如何获得与第一张相同的图片,只是显示y = 0到20的"视口"?

而..第二张图片是什么?看起来实际上缺少数据(例如:cyl = 4的3-4分).

dfr*_*kow 10

从joran的评论来看,这有效:

qplot(cyl, mpg, data=mtcars) +
  geom_boxplot() +
  coord_cartesian(ylim=c(0,20))
Run Code Online (Sandbox Code Playgroud)

来自文档:

有两种缩放绘图显示的方法:使用刻度或坐标系.他们以两种截然不同的方式工作.

在比例上设置限制将丢弃不在这些限制范围内的所有数据.这相当于绘制原始数据的子集

在坐标系上设置限制会执行视觉缩放,数据不变,我们只查看原始图的一小部分.

谢谢你!