【发布时间】:2018-01-31 18:47:33
【问题描述】:
我无法为此提供可重现的示例,但我想询问 ggsave() 函数的奇怪行为:我遇到以下情况:
- 我创建了一个 ggplot,通过将绘图分配给一个变量,比如说
p - 我评估
p并且 - 应该如此 - 绘图显示在 RStudio 的绘图窗格中。 - 我的下一个电话是
ggsave(plot = p, filename = "plot.pdf"),剧情是 写入 plot.pdf 和 R 给我控制台上书面情节的尺寸。
奇怪的是:当 RStudio 绘图窗格处于活动状态时(即打开了 RStudio 图形设备),第 3 步中ggsave() 编写的绘图的尺寸与没有打开 RStudio 图形设备时不同。因此,书面情节的比例是关闭的。换句话说:步骤 3 会根据步骤 2 的执行产生不同的结果。有谁知道为什么会这样?我认为ggsave() 完全独立于任何 RStudio 设备。还是这只发生在我的机器上?
这是我的sessionInfo():
R version 3.4.1 (2017-06-30)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6
Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib
locale:
[1] de_DE.UTF-8/de_DE.UTF-8/de_DE.UTF-8/C/de_DE.UTF-8/de_DE.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] ggplot2_2.2.1 scales_0.4.1 data.table_1.10.4
loaded via a namespace (and not attached):
[1] ggrepel_0.6.12 Rcpp_0.12.12 digest_0.6.12 grid_3.4.1 plyr_1.8.4 gtable_0.2.0 rlang_0.1.2 lazyeval_0.2.0
[9] labeling_0.3 RColorBrewer_1.1-2 tools_3.4.1 munsell_0.4.3 compiler_3.4.1 colorspace_1.3-2 sciplot_1.1-1 tibble_1.3.3
【问题讨论】:
-
来自
ggsave()文档 'width, height 以单位(“in”、“cm”或“mm”)为单位的绘图大小。如果未提供,则使用当前图形设备的大小。' -
啊啊!非常感谢……我没有仔细阅读文档。