Với sự trợ giúp của bạn trong một chuỗi khác, tôi đã quản lý để vẽ một số bản đồ toàn cầu. Đầu tiên tôi chuyển đổi dữ liệu GRIB2 khí tượng thành Netcdf và sau đó vẽ bản đồ toàn cầu.R dữ liệu cắt xén và đặt giới hạn trục
Bây giờ tôi muốn vẽ sơ đồ chỉ là một tiểu vùng của bản đồ. Tôi đã thử lệnh cây trồng và thành công trích xuất các tiểu vùng của tập tin nc toàn cầu. Nhưng khi vẽ đồ tôi không thể tìm cách kiểm soát giới hạn trục. Nó vẽ một bản đồ lớn hơn vùng dữ liệu để các khoảng trắng lớn xuất hiện ở cả hai phía.
Đây là kịch bản tôi đang sử dụng để vẽ bản đồ
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()
mà cung cấp cho sản lượng này.
Nó có phải là một trong những đơn giản nhưng tôi là một người dùng R đơn giản. Cảm ơn trước.
EDIT: Đầu ra mới khi thêm xlim = c (-40,40), ylim = c (20,90) như được đề xuất. Có vẻ như nó không khắc phục được sự cố. Nhưng chơi với x, y kích thước của tập tin png đầu ra trông đầy hứa hẹn như tôi có thể điều chỉnh kích thước để phù hợp với bản đồ. Chắc chắn nó phải là một giải pháp, một trong những quyền tôi không thể tìm thấy.
Chỉ cần thêm một 'xlim' và một' ylim' cho 'lệnh plot' của bạn, ví dụ 'cốt truyện (...., xlim = c (-10,30), ylim = c (30, 80))' Và âm mưu tốt đẹp bằng cách này, +1 –
Có thể hãy xem gói googleVis. Không chắc chắn nó sẽ giúp đỡ, nhưng nó là khá gọn gàng. Nó chứa các hàm IntensityMap, GeoMap và Map có lẽ có thể giúp ích. –
Hi @ SimonO101 Đó là nỗ lực đầu tiên của tôi trước khi nhìn vào vụ mùa, không chắc chắn nếu đã thử cả hai. Không phải tại nơi làm việc bây giờ, sẽ cung cấp cho một thử. Cảm ơn nhiều. – pacomet