Mapa bƔsico
#La clave es temporal de google
apiKey <- "AIzaSyBPxhDW9_bUJ1juxXEGvY_QcNIZNJPUy7A"
#install.packages("ggplot2")
#install.packages("ggmap")
library("ggplot2")
library("ggmap")
## Google's Terms of Service: https://cloud.google.com/maps-platform/terms/.
## Please cite ggmap if you use it! See citation("ggmap") for details.
register_google(apiKey)
#Generar mapas con coordenadas o nombres
qmap(c(-76.5, 3.43), zoom=12, maptype="hybrid")
## Source : https://maps.googleapis.com/maps/api/staticmap?center=3.43,-76.5&zoom=12&size=640x640&scale=2&maptype=hybrid&language=en-EN&key=xxx

#qmap("Unicentro Cali, Valle", zoom=12, maptype="hybrid")
Mapa de paradas del MIO en Cali
#Cargar archivo
library(readr)
Paradas_Mio <- read_delim("MIO_STOPS.txt",
"\t", escape_double = FALSE, trim_ws = TRUE)
##
## -- Column specification --------------------------------------------------------
## cols(
## STOPID = col_double(),
## PLANVERSIONID = col_double(),
## SHORTNAME = col_character(),
## LONGNAME = col_character(),
## GPS_X = col_double(),
## GPS_Y = col_double(),
## DECIMALLONGITUDE = col_double(),
## DECIMALLATITUDE = col_double(),
## PASSANGERS_NUM = col_double(),
## TYPE_BUS = col_double()
## )
#Generar mapa
#mapa <- ggplot(Paradas_Mio, aes(DECIMALLONGITUDE, DECIMALLATITUDE, color=TYPE_BUS))
city <- get_map(c(-76.5, 3.43), zoom=12)
## Source : https://maps.googleapis.com/maps/api/staticmap?center=3.43,-76.5&zoom=12&size=640x640&scale=2&maptype=terrain&language=en-EN&key=xxx
mapa <- ggmap(city)
mapa <- mapa + geom_point(data=Paradas_Mio, aes(x=DECIMALLONGITUDE, y=DECIMALLATITUDE), color=Paradas_Mio$TYPE_BUS, size=Paradas_Mio$PASSANGERS_NUM*0.02)
mapa

Mapa con agrupamiento
#Adicional columna de agrupamiento
k <- 7
nIter <- 100
grupos <- kmeans(Paradas_Mio[,c(7, 8)], k, iter.max = nIter, nstart = 1)
Paradas_Mio$grupos <- grupos$cluster
city <- get_map(c(-76.5, 3.43), zoom=12)
## Source : https://maps.googleapis.com/maps/api/staticmap?center=3.43,-76.5&zoom=12&size=640x640&scale=2&maptype=terrain&language=en-EN&key=xxx
mapa <- ggmap(city)
mapa <- mapa + geom_point(data=Paradas_Mio, aes(x=DECIMALLONGITUDE, y=DECIMALLATITUDE), color=Paradas_Mio$grupos, size=Paradas_Mio$PASSANGERS_NUM*0.02)
mapa

Mapa con polĆgono
#Adicional columna de agrupamiento (errado)
k <- 7
nIter <- 100
grupos <- kmeans(Paradas_Mio[,c(7, 8)], k, iter.max = nIter, nstart = 1)
Paradas_Mio$grupos <- grupos$cluster
#Poligono
indicesC1 <- chull(Paradas_Mio$grupos==1)
poligono <- Paradas_Mio[indicesC1,]
city <- get_map(c(-76.5, 3.43), zoom=12)
## Source : https://maps.googleapis.com/maps/api/staticmap?center=3.43,-76.5&zoom=12&size=640x640&scale=2&maptype=terrain&language=en-EN&key=xxx
mapa <- ggmap(city)
mapa <- mapa + geom_point(data=Paradas_Mio, aes(x=DECIMALLONGITUDE, y=DECIMALLATITUDE), color=Paradas_Mio$grupos, size=Paradas_Mio$PASSANGERS_NUM*0.02)
mapa <- mapa + geom_polygon(data=poligono, aes(x=DECIMALLONGITUDE, y=DECIMALLATITUDE), color= "black", alpha=0.2)
mapa
