根据这篇文章中的建议,我试图将衬线字体(或字体“系列”)安装到 R 中,以便我可以将 ggplots 保存为 .eps 文件。尽管提供的建议有效,但我想尝试解决该问题以供将来使用。
这是生成问题的代码。
library(bayesplot)
df <- data.frame(xVar = rnorm(1e4,0,1), yVar = rnorm(1e4,2,1), zVar = rnorm(1e4,4,1))
t <- bayesplot::mcmc_trace(df)
t
Run Code Online (Sandbox Code Playgroud)
现在当我去保存这个数字时......
ggplot2::ggsave(filename = "tPlot.eps",
plot = t,
device = "eps",
dpi = 1200,
width = 15,
height = 10,
units = "cm")
Run Code Online (Sandbox Code Playgroud)
...它抛出错误
Error in grid.Call(C_stringMetric, as.graphicsAnnot(x$label)) :
family 'serif' not included in postscript() device
Run Code Online (Sandbox Code Playgroud)
在上一篇文章中,回答者建议我下载该extrafont
软件包。
我跑了
View(fonttable())
Run Code Online (Sandbox Code Playgroud)
但衬线字体似乎没有安装。
然后我尝试了
font_addpackage(pkg = "serif")
Run Code Online (Sandbox Code Playgroud)
但我得到了错误
Error in font_addpackage(pkg = "serif") :
Unknown font …
Run Code Online (Sandbox Code Playgroud) vDF <- data.frame(v = rnorm(50,1,40))
g <- ggplot(vDF, aes(x = vDF)) + geom_histogram()
ggsave(g, file="name.eps")
Run Code Online (Sandbox Code Playgroud)
我不断收到错误消息
grDevices::postscript(..., onefile = FALSE, Horizontal = FALSE, 中的错误:无法打开文件“name.eps”
为什么我不能完成这个工作?我看到建议说‘嘿,就做...
setEPS()
postscript("whatever.eps")
plot(rnorm(100), main="Hey Some Data")
dev.off()
Run Code Online (Sandbox Code Playgroud)
但我什至无法首先保存原始 .eps 文件。