我正在尝试为手稿制作图形,应该用 MS Word 编写,它不接受 pdf 格式的图形。该杂志要求在 Word 文件中嵌入图形的初稿。这些图形的分辨率最低应为 300 dpi,宽度为 169 毫米或 81 毫米(两列/一列)。我注意到,当我将图片的分辨率指定为 300(res = 300)时,字体大小会绑定(bind)到这个值。这适用于某些图形(第一个示例,example.png),而对于其他图形(example2.png)则更糟。如何控制字体大小以使图形的尺寸和分辨率保持固定?
library(ggplot2)
library(grid)
data(iris)
vplayout <- function(x, y) viewport(layout.pos.row = x, layout.pos.col = y)
p <- ggplot(iris, aes(Species, Petal.Length))
q <- ggplot(iris, aes(Species, Petal.Width))
len <- p + geom_boxplot()
wid <- q + geom_boxplot()
png("example.png", width = 169, height = 100, units = "mm", res = 300)
grid.newpage()
pushViewport(viewport(layout = grid.layout(1, 2)))
print(len, vp = vplayout(1, 1))
print(wid, vp = vplayout(1, 2))
dev.off()
png("example2.png", width = 81, height = 100, units = "mm", res = 300)
grid.newpage()
pushViewport(viewport(layout = grid.layout(1, 2)))
print(len, vp = vplayout(1, 1))
print(wid, vp = vplayout(1, 2))
dev.off()
换句话说,我想减小 example2.png 中的字体大小,但保持两个图的布局和尺寸不变。
Example.png
Example2.png
最佳答案
使用 base_size
theme_XXX()
的参数功能,您可以更改所有文本的整体字体大小。
png("example2.png", width = 81, height = 100, units = "mm", res = 300)
grid.newpage()
pushViewport(viewport(layout = grid.layout(1, 2)))
print(len + theme_gray(base_size=12*(81/169)), vp = vplayout(1, 1))
print(wid + theme_gray(base_size=12*(81/169)), vp = vplayout(1, 2))
dev.off()
关于r - 如何控制png中的字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10302364/