gpt4 book ai didi

r - 导出具有确切大小和字体大小的图形

转载 作者:行者123 更新时间:2023-12-05 00:52:06 26 4
gpt4 key购买 nike

我需要从R导出图形以用于不同的出版物格式,即科学海报,Journal Articel,Powerpoint演示文稿。只要我不知道使用R-Markdown和Latex或Sweave来生成pdf幻灯片,我就需要使用Microsoft应用程序。

我用ggplot2在R中做图形。

我的MWE

df1 <- expand.grid(Year = c(2000, 2010),
Treat = c("TreatA","TreatB"),
Location = c("Berlin", "Munich", "Kansas", "Paris"),
rep = c(1,2,3,4,5,6,7,8,9,10))
df1 <- cbind(df1,
Var1 = runif(160, -10,25) + rnorm(160,8,4))

我的图形代码:
p1 <- ggplot(aes(y = Var1, x = Treat,  na.rm=TRUE, fill=Location), data = df1) +
stat_boxplot(geom ='errorbar', width= 0.5) +
geom_boxplot(outlier.shape = 1, outlier.size = 2, linetype="solid", size = 1) +
facet_grid( Year ~ Location) +
scale_y_continuous(limits=c(-20,60)) +
scale_fill_manual(values=c("#E69F00", "#009E73", "#0072B2", "#D55E00")) +
ylab("Magic Skills") +
xlab("Magic Juice") +
theme(text=element_text(family="Arial", size=18),
axis.text.x = element_text(angle = 30, hjust = 1),
line=element_line(size=1),
rect=element_rect(colour="red", size=1),
panel.background=element_rect(colour="black",fill="white", size=1),
strip.background=element_rect(colour="dark grey", fill="black"),
strip.text=element_text(face="bold", colour="white"),
panel.grid.major=element_blank(),
panel.grid.minor=element_blank(),
legend.position="none");p1

我如何保存图表:
ggsave(p1, file="Results/Figures/Abb2_Boxplots_LarvenPuppen2.svg", width=35, height=20, units = "cm", dpi=500) 

我将整个图形的字体大小设置为“theme(text = element_text(family =“Arial”,size = 18)“)。
在ggsave期间,我调整高度和宽度,对于Poster,高度应为20厘米,宽度应为35厘米。我保存了.svg,因为我对图形的质量有了最好的经验,此外,我可以随时在Inkscape中进行任何编辑,这太好了!

到目前为止,到目前为止,似乎很好,在从Inkscape导出图形(未经编辑!)为.png后,该文本在powerpoint海报中的位置绝不是18 pt。它甚至不是20 x 35厘米,我发现在保存和导出过程中我松弛了约5厘米或更多。

我想R正在写,当我说保存20x35 cm R会写。在整个过程中哪里更改了设置,我该如何处理?

此致,
法西德

最佳答案

SVG中的“18pt”与打印页面上的18pt不同。

CSS样式属性中的一个点(“pt”)已定义(例如在打印行业中)为1/72英寸。但是,在CSS中,一英寸不是现实世界中的英寸,而是96英寸“CSS像素”。

dpi为96,是很久以前选择的任意值。电脑显示器不再是每英寸96像素(如果有的话)。

如果您想使某些东西与现实世界相匹配(例如,在打印页面或屏幕上为一英寸),则必须测试您的环境和输出方法,并将缩放因子应用于SVG单位。或您的转换技术。

关于r - 导出具有确切大小和字体大小的图形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43345752/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com