我正在尝试创建加拿大选定省份/地区和选定美国州的地图。到目前为止,最好的地图似乎是用GADM数据生成的地图:http://www.gadm.org/R:创建加拿大选定省份和美国州的地图
但是,我还没有能够在同一地图上绘制美国和加拿大地图,或只绘制了选定的省/地区和州。例如,我对阿拉斯加州,育空地区,西北地区,不列颠哥伦比亚省,艾伯塔省和蒙大拿州等地感兴趣。
此外,美国地图似乎沿着国际日期划分。
可有人请帮我:
- 情节上述省/地区和国家在一张地图
- 避免美国沿国际日期变更线
- 覆盖经纬度网格划分上
- 选择一个特定的投影,也许是polyconic。
也许spplot不允许用户指定投影。我没有看到在spplot帮助页面上选择投影的选项。我知道如何在地图包中选择具有地图功能的投影,但这些地图看起来看起来不太好,我也无法绘制所需的省份/地区子集以及具有该功能的州。
我不知道如何开始添加经纬度网格。然而,“sp.pdf”文件的第3.2节似乎涉及该主题。
下面是我到目前为止的代码。我已经加载了我所遇到的每个与地图有关的软件包,并且除了省/地区或州边界之外,还注释了GADM数据。
遗憾的是,到目前为止,我只设法绘制加拿大或美国
library(maps)
library(mapproj)
library(mapdata)
library(rgeos)
library(maptools)
library(sp)
library(raster)
library(rgdal)
# can0<-getData('GADM', country="CAN", level=0) # Canada
can1<-getData('GADM', country="CAN", level=1) # provinces
# can2<-getData('GADM', country="CAN", level=2) # counties
plot(can1)
spplot(can1, "NAME_1") # colors the provinces and provides
# a color-coded legend for them
can1$NAME_1 # returns names of provinces/territories
# us0 <- getData('GADM', country="USA", level=0)
us1 <- getData('GADM', country="USA", level=1)
# us2 <- getData('GADM', country="USA", level=2)
plot(us1) # state boundaries split at
# the dateline
us1$NAME_1 # returns names of the states + DC
spplot(us1, "ID_1")
spplot(us1, "NAME_1") # color codes states and
# provides their names
#
# Here attempting unsuccessfully to combine U.S. and Canada on one map.
# Attempts at selecting given states or provinces have been unsuccessful.
#
plot(us1,can1)
us.can1 <- rbind(us1,can1)
感谢任何帮助的地图。到目前为止,我还没有取得上述步骤2-4的进展。也许我要求太多。也许我应该简单地切换到ArcGIS并尝试使用该软件。
我已阅读本StackOverflow的帖子:
编辑
我现在借的电子副本 '中的空间数据分析与R' Bevand等。 (2008年)和下载(或位于)从本书的网站有关的R-代码和数据:
我也发现了一些好看的GIS相关的R代码在这里:
https://sites.google.com/site/rodriguezsanchezf/news/usingrasagis
如果当我学习如何完成预期的目标,我会在这里发布解决方案。尽管如果我无法完成R中的目标,我最终可能会转移到ArcGIS。
感谢详细的例子。你有什么想法为什么GADM地图不能显示五大湖,而只是在威斯康星州东北部显示一个多边形? –