2015-05-30 29 views
0

我需要生成170個圖形。當我嘗試自動保存所有圖形時,只有第一個顯示右邊的圖形,其他的顯示爲空白。自動保存多個圖形

df <- read.csv("Full_data.csv", header = TRUE) 
all.station <- as.vector(unique(df$Station)) 
for (i in 1:10) { 
df.sub <- subset(df, df$Station == all.station[i]) 
df.1 <- df.sub[1:3, ] 
v <- df.1[1,1] 
z <- df.1[1, 3] 
u <- df.sub[6, 3] 

p1 = ggplot(...) 
p2 = ggplot(...) 
p3 = ggplot(...) 
grid.arrange(p1, p2, p3, ncol = 3) 
f.name <- paste(v, ".png", sep = "") 
png(f.name) 
ggsave(f.name, width=3.5, height=5, units = c("in"), dpi=100) 

} 
dev.off() 

當我手動執行它們時,它們都通過繪圖窗口中的導出命令正常工作。我嘗試在食譜中使用該方法,但它只適用於第一張圖。任何關於我做錯了什麼的建議?

回答

1

我能通研究(亞光找出ggsave不grid.arrange工作

,所以我不得不使用這一點,很好地工作。

f.name <- paste(v, ".png", sep = "") + 
    png(f.name) + 
    grid.arrange(p1, p2, p3, ncol = 3) 
    dev.off() 
    }