Решим несколько типичных задач, связанных с картами
Загружаем данные c www.gadm.org
require(sp)
require(maptools)
require(rgdal)
# скачаем с сайта gadm данные по России с детализацией по регионам:
rus <- url("http://www.gadm.org/data/rda/RUS_adm1.RData")
load(rus)
# по умолчанию получаем полигоны всех регионов в объекте gadm
Можно посмотреть названия регионов:
print(gadm$NAME_1)
## [1] Karachay-Cherkess Karelia Kemerovo
## [4] Khabarovsk Khakass Khanty-Mansiy
## [7] Adygey Aga Buryat Altay
## [10] Amur Arkhangel'sk Astrakhan'
## [13] Bashkortostan Belgorod Bryansk
## [16] Buryat Chechnya Chelyabinsk
## [19] Chita Chukot Chuvash
## [22] City of St. Petersburg Dagestan Evenk
## [25] Gorno-Altay Ingush Irkutsk
## [28] Ivanovo Kabardin-Balkar Kaliningrad
## [31] Kalmyk Kaluga Kamchatka
## [34] Kirov Komi Komi-Permyak
## [37] Koryak Kostroma Krasnodar
## [40] Krasnoyarsk Kurgan Kursk
## [43] Leningrad Lipetsk Maga Buryatdan
## [46] Mariy-El Mordovia Moskva
## [49] Murmansk Nenets Nizhegorod
## [52] North Ossetia Novgorod Novosibirsk
## [55] Omsk Orel Orenburg
## [58] Penza Perm' Primor'ye
## [61] Pskov Rostov Ryazan'
## [64] Sakha Sakhalin Samara
## [67] Saratov Smolensk Stavropol'
## [70] Sverdlovsk Tambov Tatarstan
## [73] Taymyr Tomsk Tula
## [76] Tuva Tver' Tyumen'
## [79] Udmurt Ul'yanovsk Ust-Orda Buryat
## [82] Vladimir Volgograd Vologda
## [85] Voronezh Yamal-Nenets Yaroslavl'
## [88] Yevrey
## 88 Levels: Adygey Aga Buryat Altay Amur Arkhangel'sk ... Yevrey
Есть альтернативные названия регионов gadm$VARNAME_1 и названия регионов на русском gadm$NL_NAME_1, которые я не могу прочитать из-за кодировки.
Можно посмотреть деление регионов по типам:
table(gadm$TYPE_1)
##
## Avtonomnaya Oblast Avtonomnyy Okrug Gorsovet
## 1 10 1
## Kray Oblast Respublika
## 7 48 21
Википедия даёт чуть-чуть другое деление
В объекте gadm есть данные по длине границы и площади региона:
plot(log(gadm$Shape_Leng), log(gadm$Shape_Area), xlab = "Лог-длина границы",
ylab = "Лог-площадь региона", main = "Зависимость площади региона и длины границы")
Этим измерениям стоит доверять лишь очень примерно. Единицы измерения — пока не определены, есть подозрение, что это квадратные градусы :)
Россия — родина слонов! Точнее, Россия одна из двух стран, пересекающих 180-ый меридиан. Примерно по 180-му меридиану проходит линия перемены дат. Слева — “вчера”, справа — “сегодня”:

Если построить карту без корректировок, то она будет разрезана по 180-му меридиану, и кусок Чукотки будет резко слева от всей остальной карты. Чтобы избежать этого, нужно построить другую проекцию:
proj4.str <- CRS("+init=epsg:3413 +lon_0=105")
gadm.prj <- spTransform(gadm, proj4.str)
spplot(gadm.prj, "NAME_1") # `NAME_1` --- переменная, отвечающая за раскраску