У меня есть четыре растровых стека, каждый из которых содержит 228 слоев.Я хочу построить первый шаг каждого стека на графике панели, используя пар (2,2) в R, и, наконец, произвести 228 графиков, каждый из которых содержит 4 карты.Я хочу сделать это с помощью цикла, но это то, что я дошел до этого.Не могли бы вы помочь мне?
> to_dates = seq(as.Date('1990-01-01'), as.Date('2008-12-31'), by='month')
> dts <- format(as.Date(to_dates), "%Y-%m")
> #
> ex = expression(m^3 / m^-3)
> #
> for(k in 1:length(dts)){
> par(mfrow = c(2,2))
> #
> png(filename = paste("erai_land_soil_moisture_", dts[k], ".png", sep=""), width = 800, height = 800)
> setwd("F:/.../layer1")
> for(i in 1:length(file_list1@layers)){
> file_name = paste(names(file_list1)[i], "_layer1.png", sep="") png(file_name, width = 800, height = 800)
> plot(file_list1[[i]],
> main = "ERA-Interim/Land: Volumetric soil water - Layer 1: 0-7cm",
> cex.main = 0.8,
> sub = paste(dts[i]),
> cex.main = 1.7,
> cex.sub = 1.8, col = clrs,
> legend.shrink=1, legend.width=1, zlim=c(from=0, to=0.5)) grid.text(ex, x=unit(0.96, "npc"), y=unit(0.96, "npc"), just=1, rot=
> 0, gp=gpar(fontsize=13)) plot(afr, add=T) dev.off()
>}
> setwd("F:/.../layer2")
> for(i in 1:length(file_list2@layers)){
> file_name = paste(names(file_list2)[i], "_layer2.png", sep="") png(file_name, width = 800, height = 800)
> plot(file_list2[[i]], main =
> "ERA-Interim/Land: Volumetric soil water - Layer 2: 7-21cm",
> sub = paste(dts[i]),
> cex.main = 1.7,
> cex.sub = 1.8, col = clrs,
> legend.shrink=1, legend.width=1, zlim=c(from=0, to=0.5)) grid.text(ex, x=unit(0.96, "npc"), y=unit(0.96, "npc"), just=1, rot=
> 0, gp=gpar(fontsize=13)) plot(afr, add=T) dev.off()
> }
> setwd("F:/.../layer3")
> for(i in 1:length(file_list3@layers)){
> file_name = paste(names(file_list3)[i], "_layer3.png", sep="") > png(file_name, width = 800, height = 800)
> plot(file_list3[[i]],
> main = "ERA-Interim/Land: Volumetric soil water - Layer 3: 21-72cm",
> cex.main = 0.8,
> sub = paste(dts[i]),
> cex.main = 1.7,
> cex.sub = 1.8, col = clrs,
> legend.shrink=1, legend.width=1, zlim=c(from=0, to=0.5)) grid.text(ex, x=unit(0.96, "npc"), y=unit(0.96, "npc"), just=1, rot=
> 0, gp=gpar(fontsize=13)) plot(afr, add=T) dev.off()
>}
> setwd("F:/.../layer4")
> for(i in 1:length(file_list4@layers)){
> file_name = paste(names(file_list4)[i], ".png", sep="")
> png(file_name, width = 800, height = 800) plot(file_list4[[i]],
> main = "ERA-Interim/Land: Volumetric soil water - Layer 4: 72-189cm",
> cex.main = 0.8,
> sub = paste(dts[i]),
> cex.main = 1.7,
> cex.sub = 1.8, col = clrs,
> legend.shrink=1, legend.width=1, zlim=c(from=0, to=0.5)) grid.text(ex, x=unit(0.96, "npc"), y=unit(0.96, "npc"), just=1, rot=
> 0, gp=gpar(fontsize=13)) plot(afr, add=T) dev.off()
>}
> #
> title(paste(dts[k], "ERA-Interim/Land Soil Moisture", sep=""), cex.main=1.9, outer=TRUE)
> #
> dev.off()
> #
> }