R- хороплет карты-пакет хороплет
Я пытаюсь составить картографическую карту европейских стран в соответствии с некоторым показателем (процент населения, с которым произошел несчастный случай на работе), используя новый пакет choroplethr. Вот воспроизводимый пример, демонстрирующий 2 проблемы, которые мне нужно решить.
a<-c(4.1,2.5,0.4,6.4,1.4,1.8,3.8,1.3,2.3,8.4,5.2,1.9,0.8,1.5,2.1,1.2,3.8,1.4,3.1,0.8,4.0,1.3,4.8,2.6,2.8,2.3,3.1,2.5)
target<-c("austria","belgium","bulgaria","switzerland","cyprus","czech republic","denmark",
"estonia","spain","finland","france","greece","croatia","hungary","ireland","italy",
"lithuania","luxembourg","latvia","norway","poland","portugal","romania","sweden",
"slovenia","slovakia","turkey","united kingdom")
datas<-data.frame(region=target,value=a)
datas$region<-as.character(datas$region)
install.packages("choroplethr")
install.packages("choroplethrMaps")
library(choroplethr);library(choroplethrMaps)
data(country.map)
data(country.regions)
country_choropleth(datas,legend="%",num_colors=1,zoom=target)
1) Первая серьезная проблема, с которой я сталкиваюсь, - это дополнительные области, которые принадлежат некоторым странам (например, Франции) и не позволяют карте полностью масштабировать Европу. Я дал параметр масштабирования всего вектора стран, которые существуют в кадре данных. если бы я попытался
country_choropleth(datas,legend="%",num_colors=1,zoom="switzerland")
тогда это увеличило бы только ШвейцариюПроблема приходит из таких стран, как Франция, где
country_choropleth(datas,legend="%",num_colors=1,zoom="france")
Поэтому мне нужен способ отключить зоны, которые принадлежат европейским странам, а не находятся в европейской зоне. Есть идеи?
2) Вторая проблема, которая у меня есть, заключается в том, что внутри country.regions$region
там, где имеются доступные регионы для использования с пакетом, мальта отсутствует. Это одно пятно на карте, но я не могу пропустить это. Есть ли способ добавить страну?
1 ответ
Вы, вероятно, должны задать два вопроса. Вы можете дополнить вывод choropleth pkg другими ggplot
слои / эстетика. Чтобы "увеличить" и использовать близко к правильной проекции, вы можете сделать:
library(ggplot2)
gg <- country_choropleth(datas,legend="%",num_colors=1,zoom=target)
gg <- gg + xlim(-31.266001, 39.869301)
gg <- gg + ylim(27.636311, 81.008797)
gg <- gg + coord_map("lambert", lat0=27.636311, lat1=81.008797)
gg
(и вы можете поиграть с ограничивающими рамками координат, чтобы немного напрячься)\