R 宽度、高度、分辨率似乎不会影响导出绘图的配置

R 宽度、高度、分辨率似乎不会影响导出绘图的配置,r,ggplot2,directory,jpeg,R,Ggplot2,Directory,Jpeg,我正在尝试从R-studio导出一个绘图,它应该具有足够好的学术论文质量-但是,它无法增加导出绘图的大小和质量 以下数据: df <- data.frame(cbind("WBHO" = runif(20, 1.0, 7.0), "SI" = runif(20, 1.0, 7.0), "OORT" = runif(20, 1.0, 7.0))) 正如你所看到的,我已经添加了关于单位、宽度、高度和分辨率的规范-但是,绘图保持不变,没有任何变化!我假设这与我正在使用的“sprintf”命令有

我正在尝试从R-studio导出一个绘图,它应该具有足够好的学术论文质量-但是,它无法增加导出绘图的大小和质量

以下数据:

df <- data.frame(cbind("WBHO" = runif(20, 1.0, 7.0), "SI" = runif(20, 1.0, 7.0), "OORT" = runif(20, 1.0, 7.0)))
正如你所看到的,我已经添加了关于单位、宽度、高度和分辨率的规范-但是,绘图保持不变,没有任何变化!我假设这与我正在使用的“sprintf”命令有关,但我不知道如何解决这个问题。
非常感谢您的帮助

你试过了吗?嘿!如果我执行以下操作:ggsave(“%s/%s.jpg”,folder,“Means_Orientations”,units=“in”,width=5,height=5,res=300)dev.off()我会收到一个错误提示我不知道你的错误是什么,但你不需要
dev.off()
ggsave
。即使删除dev.off()我也会收到错误提示:“未知图形设备”表示“方向”,指的是我想给文件命名的名称。我输入文件夹的方式似乎不受ggsave支持。工作方式似乎如下:ggsave(sprintf(“%s/%s.jpg”,folder,“Means_-OrientationsW”,units=“in”,width=5,height=5,res=300))-我没有包括“sprintf”“以前。你能告诉我为什么它不能与jpeg()和dev.off()一起使用吗??
library(easycsv)
choose_dir = function(){
os = Identify.OS()
if(tolower(os) == "windows"){
directory <- utils::choose.dir()
}
if(tolower(os) == "macosx"){
system("osascript -e 'tell app \"RStudio\" to POSIX path of (choose folder with prompt \"Choose Folder:\")' > /tmp/R_folder",
       intern = FALSE, ignore.stderr = TRUE)
directory <- system("cat /tmp/R_folder && rm -f /tmp/R_folder", intern = TRUE)
}
return(directory)
}
folder = choose_dir()
jpeg(sprintf("%s/%s.jpg", folder, "Means_Orientations", units = "in", width = 5, height = 5, res = 300))
df %>%
gather(key = "variable", value = "value") %>%
ggplot(aes(variable, value)) +
stat_summary(geom="bar", fun.y="mean", color = "brown") +
coord_flip() + scale_y_continuous(breaks = c(1, 2, 3, 4, 5, 6, 7)) +
expand_limits(y = c(0, 7)) +
labs(x = "", y = "") +
theme(text = element_text(size = 20), panel.background = element_rect(fill = "#F2F0ED"))
dev.off()