Ich versuche, 6 rgb Bilder mit raster::plotRGB
zu plotten und ich habe ein Problem, die Ränder anzupassen. Es scheint standardmäßig, plotRGB
überschreibt alle par(mar)
Einstellungen, die wir zuvor aufgerufen haben. Mein Ziel ist es, eine 3 * 2 symmetrische Grafik zu haben.hinzufügen Ränder zu einem PlotRGB Graph
library(raster)
par.default <- par(no.readonly=T)
png("c:\\temp\\img_plotRGB.png", width=6, height=9,unit="in", res=300)
par(mfrow=c(3,2), oma=c(1,1,1,1), mar=c(1,1,1,1))
for(i in 1:6){
r <- g <- b <- raster(ncol=10, nrow=10, res=1, crs=CRS("+init=EPSG:32198"), ext=extent(c(0,10,0,10)))
values(r) <- runif(ncell(r))
values(g) <- runif(ncell(r))
values(b) <- runif(ncell(r))
rgb = rgb<-stack(r*255,g*255,b*255)
plotRGB(rgb)
}
par(par.default)
dev.off()
können Sie sehen, es gibt keine Trennung zwischen zwei Graphen auf der gleichen Linie, auch wenn par(mar=c(1,1,1,1)
eingestellt ist.
Wenn ich hinzufügen, die Einstellung axes=TRUE
-plotRGB
ich das Layout bekommen ich will, aber mit der Achse Ich will nicht:
png("c:\\temp\\img_plotRGB_axes.png", width=6, height=9,unit="in", res=300)
par(mfrow=c(3,2), oma=c(1,1,1,1), mar=c(1,1,1,1))
for(i in 1:6){
r <- g <- b <- raster(ncol=10, nrow=10, res=1, crs=CRS("+init=EPSG:32198"), ext=extent(c(0,10,0,10)))
values(r) <- runif(ncell(r))
values(g) <- runif(ncell(r))
values(b) <- runif(ncell(r))
rgb = rgb<-stack(r*255,g*255,b*255)
plotRGB(rgb, axes=TRUE)
}
par(par.default)
dev.off()
Jede Idee, wie das erste Diagramm mit Abstand zu erhalten oder der zweite Graph ohne die Achse geschrieben?