2016-12-14 2 views
0

J'ai besoin de tracer plusieurs chemin sur la carte. si deux emplacements sont connectés sont indiquées par le groupecomment tracer plusieurs chemin sur la carte en utilisant ggplot2 et ggmap

library(ggmap) 
library(ggplot2) 

d <- data.frame(lat=c(12.97131,12.98692,12.90692,12.78692,,12.70692), 
    lon=c(77.5121,77.68627, 76.5121, 78.5121,78.05121), 
    group=c(1,1,2,2,2)) 

Bangalore <- get_map("Bangalore,India", zoom=12) 

p <- ggmap(Bangalore) 

Cependant, je ne sais pas comment utiliser geom_path ou une autre commande pour les attirer

p + geom_path(data=d, aes(x=lon, y=lat), color="black", size=1) 

J'ai référence à plus tôt post que l'on tire ligne entre deux points, mais je dois tracer des lignes entre plusieurs groupes de points. comment puis-je le faire?

Répondre

1

Utilisation aes(group=xxx):

Bangalore <- get_map("Bangalore,India", zoom=8) 
p <- ggmap(Bangalore) 
p + geom_path(data=d, aes(x=lon, y=lat, group=group), color="black", size=1) 

Par ailleurs, le niveau de zoom 12 est trop élevé pour afficher les données du groupe 2, à niveau 8 annuler le zoom pour voir vos données d'exemple.

+0

merci @Blacksad. Est-ce que lon & lat est la seule façon de tracer le chemin sur la carte? existe-t-il un moyen d'utiliser des noms de villes globaux? – santoku

+2

Vous pouvez utiliser 'ggmap'function' geocode() '(par exemple' geocode ("paris") ') pour obtenir le lat/lon des villes du nom de la ville. – Blacksad

+0

cela fonctionne très bien pour les continents. Merci beaucoup. En fait, il suffit de réaliser get_map() ne supporte pas la carte du monde. comment devrais-je dessiner le chemin sur la carte du monde? – santoku