如何在R中保存情节并让它们看起来很漂亮

时间:2017-08-01 13:31:33

标签: r ggplot2 cowplot

我试图在R中创建一个带有一些数据和下面的表格的情节。在R中,它看起来不错(图1),但是,当我导出图片(图片2)时,它看起来非常难看并且格式不同。

library(tidyverse)
library(cowplot)


p <- ggplot(iris, aes(Sepal.Length, Petal.Length, col = Species))  + geom_point()

info <- iris %>% group_by(Species) %>% summarise_all(mean)

table_plot <- tableGrob(info, theme = ttheme_default(base_size = 8), rows = NULL)

plot_total <- plot_grid(p, table_plot, nrow = 2, rel_heights = c(4 / 5, 1 / 5))
plot_total

save_plot("iris.png", plot_total)

Picture1

Picture2

3 个答案:

答案 0 :(得分:2)

另一个解决方案是使用ggsave:

ggsave("plotname.png", plot = p, width = 30, height = 20, units = "cm")

您可能需要稍微使用维度才能使其正确。您还可以指定绘图所需的格式(即.png或.tiff等),也可以指定单位。

答案 1 :(得分:1)

尝试:

png('iris.png', width = 1920,height = 1080)
print(plot_total)
dev.off()

答案 2 :(得分:1)

save_plot()函数的参数base_heightbase_aspect_ratio可以调整(在你的情况下增加),直到你得到你想要的答案。

例如,你可以这样做:

save_plot("iris.png", plot_total, base_height = 8, base_aspect_ratio = 1.4)

enter image description here

您制作的base_height越大,字体相对于图像尺寸就越小。你做出的base_aspect_ratio越大,这个数字相对于它的高度就越宽。

我个人认为,你使用的字体大小太大,但这是一个单独的问题。