对于这个经常被问到和回答的问题,我正在撞到一堵小但并非微不足道的砖墙。
我在 Linux 上使用 Rstudio 0.97.336 和 R 3.0.0。我正在制作一个(更复杂的)图表以放入论文中。标题和 x/y 标签的默认大小太小,难以阅读。但是,如果我将图像保存为 PNG 文件,则使用 element_text 主题(axis.title.y = element_text(size = rel(1.8)) 上的主题功能解决此问题的明显方法不起作用。但是它确实有效正如预期的那样,当我在 RStudio 中查看图像时。下面的代码完全重现了我的问题。
##Libraries
library(ggplot2)
set.seed(15612)
##Generate data
Year <- seq(2000,2010)
data <- -2*(Year - 2005) + 10 + runif(11,min=-3,max=3)
Title <- "Title for our graph"
xlab <- "X label"
ylab <- "Y label"
df <- data.frame(Year,data)
##Plot
##First image with small title, xlab, ylab
image1 <- ggplot(df) +
geom_line(aes(x=Year,y=data)) +
theme_bw() +
labs(title=Title,xlab=xlab,ylab=ylab)+
theme(panel.border = element_rect(fill = NA, colour="grey70"))
image1
ggsave("Image1.png",image1, width=15,height=10,units='cm')
##Second image with larger title, xlab, ylab
image2 <- image1 +
theme(axis.title.y = element_text(size = rel(1.8), angle = 90)) +
theme(axis.title.x = element_text(size = rel(1.8), angle = 00)) +
theme(plot.title = element_text(size = rel(2.0), angle = 00))
image2
ggsave("Image2.png",image2, width=15,height=10,units='cm')
dev.off()
image1
image2
这些图像在 Rstudio 的屏幕上看起来完全符合预期。图像 1 的标题等字体较小,而图像 2 的字体更大更易读。不幸的是,当保存为 png 文件时,它们是相同的,并且标题、x 和 y 标签都有小字体。
我(还)不能发布图片,所以如果你看看这两个网址,你会发现问题。
我看不到我会误入歧途。我知道 ggplot2 中存在延迟评估的问题(或功能!),但我看不出这对我有什么影响。对于这方面的任何帮助,我将不胜感激,
问候,
安东尼·斯坦斯