2016-10-31 11 views
1

Я пытаюсь построить карту Европы с каждой страной, заполненной цветом в соответствии с определенным числовым значением - я думал, что это не должно быть проблемой с шейп-файлами (которые я получил здесь http://www.naturalearthdata.com/downloads/10m-cultural-vectors/) и ggmap. Однако это работает только на очень большую карту, но я не в состоянии должным образом увеличить.Как увеличить масштаб графика ggmap, который использует шейп-файлы?

Я пытался сделать это, установив xlim() и ylim(), но с таким я отрезав форму по краям, R соединены точкам, не должны были быть связаны. Для ggplot я мог бы решить эту проблему, используя вместо этого coord_fixed(xlim, ylim), но при применении этого же к моему графику ggmap формы страны и карта больше не будут вписываться друг в друга.

ggmap with wrong shapes

Вот мой код, который я использовал для сюжета:

my.map <- get_map(location = "europe", source = "google", maptype = "satellite", zoom = 3) 

ggmap(my.map) + 
    geom_polygon(aes(x = long, y = lat, group = group), fill = eu$value, size = .2, color = 'green', data = eu, alpha = 0.5) + 
    coord_fixed(xlim = c(0, 35), ylim = c(35, 65), ratio = 1.6) 

Кто-нибудь знает, как я могу решить эту проблему?
(Я знаю, что это работает с ggplot, но я бы очень хотел использовать ggmap.)

Спасибо!

ответ

0

coord_map() Используйте вместо coord_fixed():

my.map <- get_map(location = "europe", source = "google", maptype = "satellite", zoom = 3) 
ggmap(my.map)+ 
    geom_polygon(aes(x=long, y = lat, group = group), fill='white', size=.2, color='green', data=eu, alpha=0.5)+ 
    coord_map(xlim=c(0, 35), ylim=c(35, 65)) 

resulting map

 Смежные вопросы

  • Нет связанных вопросов^_^