我遇到了此警告消息,该消息将停止执行。
Saving 8.04 x 5.67 in image
Warning messages:
1: In dev(file = filename, width = dim[1], height = dim[2], ...) :
unable to load shared object '/usr/local/Cellar/r/3.5.0_1/lib/R/library/grDevices/libs//cairo.so':
dlopen(/usr/local/Cellar/r/3.5.0_1/lib/R/library/grDevices/libs//cairo.so, 6): image not found
2: In dev(file = filename, width = dim[1], height = dim[2], ...) :
failed to load cairo DLL
Run Code Online (Sandbox Code Playgroud)
这是为我生成警告的代码
library(tidyverse)
library(cowplot)
d <- sample_n(diamonds, 50)
g <- ggplot(d, aes(carat, price)) + geom_point()
gg <- list(g,g,g)
plot_grid(plotlist = gg, nrow=1) %>%
cowplot::ggsave(filename = paste0("~/Desktop/", paste0("testing", ".svg")), device = cairo_ps)
Run Code Online (Sandbox Code Playgroud)
我该如何解决该错误?
附言:我是新手。
编辑:这是我的会话信息。我不确定这是否有帮助。我已将其包括在内,以防万一。
sessionInfo()
R version 3.5.0 (2018-04-23)
Platform: x86_64-apple-darwin17.6.0 (64-bit)
Running under: macOS High Sierra 10.13.5
Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] parallel stats graphics grDevices utils datasets methods base
other attached packages:
[1] cowplot_0.9.2 forcats_0.3.0 stringr_1.3.1 dplyr_0.7.5
[5] purrr_0.2.5 readr_1.1.1 tidyr_0.8.1 tibble_1.4.2
[9] ggplot2_2.2.1 tidyverse_1.2.1 doParallel_1.0.11 iterators_1.0.9
[13] foreach_1.4.4 lmerTest_3.0-1 lme4_1.1-17 Matrix_1.2-14
loaded via a namespace (and not attached):
[1] tidyselect_0.2.4 reshape2_1.4.3 splines_3.5.0 haven_1.1.1
[5] lattice_0.20-35 argparse_1.1.1 colorspace_1.3-2 getopt_1.20.2
[9] yaml_2.1.19 rlang_0.2.1 nloptr_1.0.4 pillar_1.2.3
[13] foreign_0.8-70 glue_1.2.0 readxl_1.1.0 modelr_0.1.2
[17] bindrcpp_0.2.2 bindr_0.1.1 plyr_1.8.4 cellranger_1.1.0
[21] munsell_0.4.3 findpython_1.0.3 gtable_0.2.0 rvest_0.3.2
[25] codetools_0.2-15 psych_1.8.4 labeling_0.3 broom_0.4.4
[29] proto_1.0.0 Rcpp_0.12.17 scales_0.5.0 jsonlite_1.5
[33] mnormt_1.5-5 hms_0.4.2 stringi_1.2.2 numDeriv_2016.8-1
[37] grid_3.5.0 cli_1.0.0 tools_3.5.0 magrittr_1.5
[41] lazyeval_0.2.1 crayon_1.3.4 pkgconfig_2.0.1 MASS_7.3-49
[45] xml2_1.2.0 lubridate_1.7.4 rstudioapi_0.7 assertthat_0.2.0
[49] minqa_1.2.4 httr_1.3.1 R6_2.2.2 nlme_3.1-137
[53] compiler_3.5.0
Run Code Online (Sandbox Code Playgroud)
小智 9
我有同样的问题,我使用MacOS。根据 CRAN 的说法,我发现它与XQuartz相关,“因为它不再是 OS X 的一部分” 。我安装了XQuartz,基本上所有与Cairo相关的问题都得到了解决。
我只有一台 Windows 机器可以提供,但以下方法可以同时保存.svg您.eps的cowplot(安装包后svglite):
# install.packages(svglite)
library(tidyverse)
library(cowplot)
d <- sample_n(diamonds, 50)
g <- ggplot(d, aes(carat, price)) + geom_point()
gg <- list(g,g,g)
plot_grid(plotlist = gg, nrow=1)
ggsave(filename = "testing.svg")
ggsave(filename = "testing.eps")
Run Code Online (Sandbox Code Playgroud)
您当然可以将文件名修改为类似的名称"~/Desktop/testing.svg",具体取决于您想要保护绘图的位置。请注意,ggsave默认情况下会保存最后一个活动绘图,并且您指定的文件名结尾应自动触发正确的设备。
| 归档时间: |
|
| 查看次数: |
4861 次 |
| 最近记录: |