【发布时间】:2018-02-03 00:08:40
【问题描述】:
我正在从基本的 R 绘图工具切换到 ggplot2 并且正在努力解决一个问题。
在基本 R 中,您可以通过设置边距来控制到四个轴(或“框”)中的每一个的距离。生成的边距是固定的,不取决于您绘制的内容。尽管刻度标签和轴标签的大小不同,这让我可以为我的论文生成具有完全相同的绘图区域大小的绘图。
在 ggplot 中,我发现了这个(最小工作示例):
library(ggplot2)
dat = data.frame(x = 1:5, y = 1e-5* (1:5) ^ 2)
p = ggplot(dat, aes(x, y)) + geom_point() + geom_line()
print(p)
print(p + scale_y_log10())
图表左侧的黑色箭头显示了我得到的实际边距之间的差异。轴标签(y) 保持不变,而y 轴的位置根据刻度标签(文本表示)的大小而变化。它可以通过将axis.text.y 更改为例如进一步升级。增加size。
无论绘制什么刻度标签,我都希望能够控制实际边距 - 在这种情况下,我可以实现不同数据集的相同大小的图形。
【问题讨论】: