(R)循环和函数中的图是空的,即使它们在单独绘制时也可以工作



所以,我有一个箱形图,我在图上用字母标注了每个图的数据点数量和显著性水平。当在一个正常的(?!?)工作流程中绘图时,他们大约需要1-2秒在X窗口系统图形(X11)中绘图,绘图之后被保存。当plot命令包装在for循环中或由函数调用时,x11窗口将保持为空,并像那样保存。

下面是一个使用mtcars的最小示例,展示了相同的问题。如果没有上下文,这个例子就没有意义。

library(ggplot2)
setwd("C:/")
output <- "C:/"
data <- mtcars
data$cyl <- as.factor(data$cyl)
#----normal plotting----
x11()
ggplot(data, aes(x = cyl, y = mpg))+
stat_boxplot(geom = "errorbar")+
geom_boxplot()
savePlot(paste0(output, "example_normal", ".tiff"), type = "tiff")
dev.off()
#----plotting throught a function----
my.plot <- function(x)
{
x11()
ggplot(x, aes(x = cyl, y = mpg))+
stat_boxplot(geom = "errorbar")+
geom_boxplot()

savePlot(paste0(output, "example_function", ".tiff"), type = "tiff")
dev.off()
}
my.plot(data)

欢呼

我必须在它周围发布一个print(ggplot(...)),使它在for循环中工作。

相关内容

  • 没有找到相关文章

最新更新