收缩y轴宽度

时间:2012-07-22 22:43:36

标签: r ggplot2

是否有可能缩小y轴?我的意思是代替图是方形的,我希望它是矩形的,y轴收缩。

library(ggplot2)
data = data.frame(rnorm(10000))
colnames(data) = "numOfX"
m <- ggplot(data, aes(x=numOfX))
m + geom_histogram(colour = "blue", fill = "white", binwidth = 0.5)

2 个答案:

答案 0 :(得分:6)

last_plot() + opts(aspect.ratio=1/10)

答案 1 :(得分:3)

您可以通过在代码的最后一行添加以下内容来调整边距:

+ opts(plot.margin = unit(c(1,1,10,1), "lines"))

数字是顺序c(顶部,右侧,底部,左侧)添加到边距的行数。

更新: baptiste和我讨论过的方法会改变绘图本身的大小,但不会改变绘图区域的大小。只是为了完整性,如果你想改变绘图的宽高比但仍然填充整个绘图区域,那么你需要改变绘图区域本身的大小。

在Mac上,您可以quartz(width=w, height=h),宽度和高度以英寸为单位。这将打开指定大小的绘图窗口。然后运行原始代码(没有边距或宽高比更改)。这将为您提供您希望的任何绘图大小,并且绘图将填充绘图区域。完成后,您可以使用dev.off()关闭Quartz窗口。

您可以使用this Stack Overflow answer在Windows中执行相同的操作。

最后,如果您正在使用RStudio,您可以执行导出 - &gt;复制到剪贴板,然后手动调整宽高比。

当然,您可以结合使用我或者baptiste的原始答案以及上述方法来同时控制绘图区域的大小和边距的大小。