R Rasterdaten zuschneiden und Achsengrenzen festlegen

Mit Ihrer Hilfe in einem anderen Thread habe ich es geschafft, einige globale Karten zu zeichnen. Zuerst konvertiere ich meteorologische GRIB2-Daten nach Netcdf und zeichne dann die globalen Karten.

Jetzt möchte ich nur einen Teilbereich der Karte zeichnen. Ich habe den Befehl crop ausprobiert und den Unterbereich der globalen NC-Datei erfolgreich extrahiert. Beim Zeichnen kann ich jedoch nicht feststellen, wie die Achsengrenzen gesteuert werden. Es wird eine Karte gezeichnet, die größer als der Datenbereich ist, sodass auf beiden Seiten große weiße Bereiche angezeigt werden.

Dies ist das Skript, mit dem ich Karten plotte

library("ncdf")
library("raster")
library("maptools")

DIA=format(Sys.time(), "%Y%m%d00") # Data d'avui
url=sprintf("ftp://ftp.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/gfs.%s/gfs.t00z.pgrb2f00", DIA) # Ruta del ftp
loc=file.path(sprintf("%s",url))
download.file(loc,"gfs.grb",mode="wb")

system("/usr/bin/grib2/wgrib2/wgrib2 -s gfs.grb | grep :TMP: | /usr/bin/grib2/wgrib2/wgrib2 -i gfs.grb -netcdf temp.nc",intern=T)

t2m <- raster("temp.nc", varname = "TMP_2maboveground")
rt2m <- rotate(t2m)
t2mc=rt2m-273.15

DAY=format(Sys.time(), "%Y%m%d") # Data d'avui

e=extent(-40,40,20,90)
tt=crop(t2mc,e)

png(filename="gfs.png",width=700,height=600,bg="white")    
    rgb.palette <- colorRampPalette(c("snow1","snow2","snow3","seagreen","orange","firebrick"), space = "rgb")#colors
    plot(tt,col=rgb.palette(200),main=as.expression(paste("Temperatura a 2m ",DAY," + 00 UTC",sep="")),axes=T)
dev.off()

das gibt diese Ausgabe.

Es muss einfach sein, aber ich bin ein einfacher R-Benutzer. Danke im Voraus.

EDIT: Neue Ausgabe beim Hinzufügen von xlim = c (-40,40), ylim = c (20,90) wie vorgeschlagen. Es scheint, dass es das Problem nicht behebt. Aber das Spielen mit der x, y-Größe der Ausgabe-PNG-Datei sieht vielversprechend aus, da ich die Größe anpassen kann, um sie an die Karte anzupassen. Sicher muss es eine andere Lösung sein, die richtige, die ich nicht finden kann.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage