R: создание карты выбранных канадских провинций и штатов США.

Я пытаюсь создать карту отдельных канадских провинций/территорий и отдельных штатов США. До сих пор самыми хорошими картами были карты, созданные с использованием данных GADM: http://www.gadm.org/

Однако мне не удалось нанести США и Канаду на одну и ту же карту или только на график. выбранные провинции/территории и штаты. Например, меня интересуют Аляска, Юкон, СЗТ, Британская Колумбия, Альберта и Монтана среди прочих.

Кроме того, карта США кажется разделенной по международной линии дат.

Может ли кто-нибудь помочь мне:

  1. нанести вышеупомянутые провинции/территории и штаты на одну карту
  2. избежать разделения США вдоль международной линии перемены дат
  3. наложить сетку широты и долготы
  4. выбрать конкретная проекция, возможно, поликоническая.

Возможно, spplot не позволяет пользователям указывать проекции. Я не видел возможности выбора проекции на странице справки spplot. Я знаю, как выбирать проекции с помощью функции карты в пакете карт, но эти карты выглядели не так красиво, и я не мог построить желаемое подмножество провинций/территорий и штатов с помощью этой функции.

Я не знаю, как начать добавлять координатную сетку. Тем не менее, раздел 3.2 файла «sp.pdf», по-видимому, касается этой темы.

Ниже приведен код, который я уже придумал. Я загрузил все пакеты, связанные с картами, на которые наткнулся, и закомментировал данные 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 для ГИС?

РЕДАКТИРОВАТЬ

Сейчас я позаимствовал электронную копию «Прикладного анализа пространственных данных с R» Bevand et al. (2008) и загрузил (или нашел) связанный код R и данные с веб-сайта книги:

http://www.asdar-book.org/

Здесь я также нашел симпатичный код R, связанный с ГИС. :

https://sites.google.com/site/rodriguezsanchezf/news/usingrasagis

Если и когда я узнаю, как достичь желаемых целей, я опубликую решения здесь. Хотя со временем я могу перейти на ArcGIS, если не смогу выполнить задачи в R.

12
задан Community 23 May 2017 в 12:02
поделиться