Как добавить поле легенды с расширенной цветной палитрой, используя R rworldmap?
Я построил карту, используя rworldmap. Но я не смог вставить легенду с расширенным цветным поддоном. Я получил эту ошибку:
Ошибка в легенде (.... неиспользованные аргументы (colourVector1 = "#00008B", colourVector2 = "#0B0B90", ...
Вот мой код:
library(rworldmap)
#color pallete
colours = colorRampPalette(c("darkblue", "white"))(23)
#csvfile
dF = read.csv("/home/shops.csv", header = T)
sPDF <- joinCountryData2Map(dF,
joinCode = "NAME",
nameJoinColumn = "Country",
verbose = TRUE)
mapData = mapCountryData(
sPDF,
nameColumnToPlot="Shops",
mapTitle = "Number of facilities around the world",
addLegend = F
)
do.call( addMapLegendBoxes, c(mapData, cex=0.39, x="left", colourVector = colours))
Вот часть моего CSV-файла:
Country Shops
1 United States 302
2 Germany 77
3 United Kingdom 67
4 Spain 60
5 France 44
6 China 35
1 ответ
Я решил сам с помощью ggmap. Это было решение:
library(ggplot2)
library(ggmap)
library(parallel)
#set workspace
setwd("/home/")
#Load data
df = read.csv("shops.csv", header = T)
coords = mclapply(X = as.character(df$Country), FUN= function(x) geocode(x))
coords=do.call(rbind.data.frame,coords)
df$lon = coords$lon
df$lat = coords$lat
mapWorld <- borders("world", colour="#E7E7E7", fill="#1a0000", alpha = .5)
mp <- ggplot() + mapWorld
mp <- mp+ geom_point(aes(x=df$lon, y=df$lat, size=df$Shops), alpha = .9, color="#000033")
mp <- mp + labs(size= "Number of shops")
mp <- mp + scale_size_continuous(breaks=c(5, 15, 26, 35, 44, 60, 67, 77, 302))
mp <- mp + theme(axis.title.x=element_blank(),
axis.text.x=element_blank(),
axis.ticks.x=element_blank(),
axis.title.y=element_blank(),
axis.text.y=element_blank(),
axis.ticks.y=element_blank())
mp
CSV-файл:
Country Shops
1 United States 302
2 Germany 77
3 United Kingdom 67
4 Spain 60
5 France 44
6 China 35
...