使用ggplot创建绘图,我希望将轴设置为。我知道我可以使用coord_cartesian()
设置绘图范围(例如,对于x轴我指定的限制从2到4),但在范围的左侧和右侧留下一点空间指定:
以上MWE的代码:
library(ggplot2)
data.mwe = cbind.data.frame(x = 1:5, y = 2:6)
plot.mwe = ggplot(data = data.mwe, aes(x=x,y=y)) + geom_line() + coord_cartesian(xlim = c(2,4))
print(plot.mwe)
我想要的结果是一个图表,其中显示的区域正好在我指定的限制之间。
我知道
How to set limits for axes in ggplot2 R plots?
但它没有回答我的问题,因为它会产生上面不需要的结果,或者会删除观察结果(limits
参数为scale_x_continuous
)。我知道我可以修改设置较小的限制范围,但我正在寻找一个干净的结果。至少我想知道实际范围与我指定的范围有多大,以便我可以相应调整我的限制。
答案 0 :(得分:5)
添加expand = FALSE
:
library(ggplot2)
data.mwe = data.frame(x = 1:5,
y = 2:6)
ggplot(data.mwe, aes(x, y)) +
geom_line() +
coord_cartesian(xlim = c(2, 4),
expand = FALSE)