每当我使用ggsave和scale保存图时,图的大小都会增加,但文本的大小不会增加。
ggplot(economics, aes(date, unemploy)) +
geom_line(color="#2fb2ab") +
theme_ipsum() +
theme(
text = element_text(family="Georgia"),
axis.title.x = element_text(hjust=0.5, size=13, family="Georgia"),
axis.title.y = element_text(hjust=0.5, size=13, family="Georgia"),
panel.border = element_rect(colour = "black", fill=NA))+
ylab("Unemployment") +
xlab("Date")
ggsave("sample_graph.png", scale = 2)
ggsave("sample_graph2.png", scale = 3)
这是图1:
这是图2:
如何获取它来缩放图形大小和字体?我不想手动设置高度和宽度。
答案 0 :(得分:3)
scale
自变量og ggsave
似乎仅影响绘图区域,而不影响字体。要像在代码中那样修改字体大小,必须在axis.title.x
或axis.title.y
中传递参数。
规避此问题的一种方法是设置比例因子,并在theme
函数和ggsave
中使用它。这样的事情应该可以解决问题:
library(ggplot2)
scale_factor = 3
ggplot(economics, aes(date, unemploy)) +
geom_line(color="#2fb2ab") +
theme(
text = element_text(family="Georgia"),
axis.title.x = element_text(hjust=0.5, size= scale_factor * 13, family="Georgia"),
axis.title.y = element_text(hjust=0.5, size= scale_factor * 13, family="Georgia"),
panel.border = element_rect(colour = "black", fill=NA))+
ylab("Unemployment") +
xlab("Date")
ggsave("sample_graph.png", scale = scale_factor)
让我知道您是否正在寻找
答案 1 :(得分:3)
两个文本的大小相同。查看旧的讨论:R, how to set the size of ggsave exactly。
第一个ggsave
创建一个14 x 7.54的图像。第二个创建20.9 x 11.3图像。在Photos
之类的查看器中打开它们时,您正在以扭曲的物理尺寸查看它们。如果以powerpoint之类的方式打开它们,以正确的物理尺寸查看它们,则会看到字体是相同的。