R: tworzenie mapy wybranych kanadyjskich prowincji i stanów USA
Próbuję stworzyć mapę wybranych kanadyjskich prowincji / terytoriów i wybranych stanów USA. Do tej pory najpiękniejsze mapy wydają się być generowane za pomocą danych GADM:http://www.gadm.org/
Jednak nie byłem w stanie wykreślić Stanów Zjednoczonych i Kanady na tej samej mapie lub na wykresie tylko wybranych prowincji / terytoriów i stanów. Na przykład interesują mnie między innymi Alaska, Yukon, NWT, British Columbia, Alberta i Montana.
Ponadto mapa USA wydaje się być podzielona wzdłuż międzynarodowej linii danych.
Czy ktoś może mi pomóc:
nakreślić wyżej wymienione prowincje / terytoria i stany na jednej mapieunikaj podziału USA wzdłuż międzynarodowej linii danychnakładaj siatkę szerokości i długości geograficznejwybierz konkretną projekcję, może polikoniczną.Może spplot nie pozwala użytkownikom na określenie projekcji. Nie widziałem opcji wyboru projekcji na stronie pomocy spplot. Wiem, jak wybierać projekcje za pomocą funkcji mapy w pakiecie map, ale te mapy nie wyglądały tak ładnie i nie mogłem wykreślić pożądanego podzbioru prowincji / terytoriów i stanów z tą funkcją.
Nie wiem, jak zacząć dodawać siatkę szerokości i długości geograficznej. Jednak sekcja 3.2 pliku „sp.pdf” wydaje się dotyczyć tego tematu.
Poniżej znajduje się kod, który do tej pory wymyśliłem. Załadowałem każdy pakiet związany z mapą. Natknąłem się i skomentowałem dane GADM, z wyjątkiem granic prowincji / terytorialnych lub państwowych.
Niestety do tej pory udało mi się tylko spisać mapy Kanady lub USA
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)
Dzięki za pomoc. Do tej pory nie poczyniłem postępów w powyższych krokach 2 - 4. Być może proszę o zbyt wiele. Być może powinienem po prostu przełączyć się na ArcGIS i wypróbować to oprogramowanie.
Przeczytałem ten post StackOverflow:
Czy R można wykorzystać do GIS?
EDYTOWAĆ
Pożyczyłem teraz elektroniczną kopię „Applied Spatial Data Analysis with R 'Bevand et al. (2008) i pobrał (lub zlokalizował) powiązany kod R i dane z witryny książki:
Znalazłem tu również ładnie wyglądający kod R związany z GIS:
https://sites.google.com/site/rodriguezsanchezf/news/usingrasagis
Jeśli i kiedy dowiem się, jak osiągnąć pożądane cele, opublikuję tutaj rozwiązania. Chociaż mogę ostatecznie przenieść się do ArcGIS, jeśli nie mogę osiągnąć celów w R.