[英]Plot a world map with a specified grid with R
我正在嘗試使用maptools包中的wrld_simpl來繪制一張具有經度/緯度網格的世界地圖。
例如,我有一個帶有經度和緯度的netCDF文件,我創建了一個矩陣,其中包含我在網格上可以擁有的所有點:
lat <- get.var.ncdf(nc,"lat")
long <- get.var.ncdf(nc,"lon")
pts <- SpatialPoints(expand.grid(long,lat), CRS(proj4string(wrld_simpl)))
現在,我想繪制坐標在我的網格上的國家。
我不知道如何處理wrld_simpl屬性!
您是否看過maps
mapproject
包? 您可以以所需的分辨率非常快速地繪制任何海岸線,並且附帶投影和網格。 您可以將投影應用於一個對象( expand.grid(long,lat)
)。 南極洲的例子:
library("mapproj")
m <- map( "world", "Antarctica", plot=FALSE)
map("world", "Antarctica", proj="conic", param=-90, fill=TRUE, col="gray")
map.grid(m, nx=4, ny=6, col="black")
front.lim <- data.frame(x=seq(-180, 180, length.out=1000),
y=rep(-62, 1000))
front.lim <- mapproject(front.lim$x, front.lim$y, projection="conic", parameters=-90)
lines(front.lim$x, front.lim$y, col="red", lwd=2)
如果已經繪制了ncdf矩陣,則只需添加map(add=TRUE)
。 它將讀取x和y限制並在此區域繪制邊框。
plot(c(-10, 45), c(30, 60), type="n", xlab="", ylab="") # image(ncdf)
map(add=TRUE, fill=TRUE, col="gray")
abline(v=seq(-10, 45, 7.5), lty=2)
abline(h=seq(-30, 60, 7.5), lty=2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.