comunas=shapefile("~/Casos/cali/Comunas.shp")
EncuestaOrigenDestino <- read_excel("Casos/EncuestaOrigenDestino.xlsx")
EncuestaOrigenDestino<-as.data.frame(EncuestaOrigenDestino)
datos <- EncuestaOrigenDestino[!EncuestaOrigenDestino$`comuna origen` %in% c("0", "Fuera de Cali"), ]
datos <- datos[!datos$`comuna destino` %in% c("0", "Fuera de Cali"), ]
datos <- datos %>%
dplyr::select("TIPO DE VEHĂCULO" ,"comuna origen" , "comuna destino")
origen <- datos %>%
dplyr::group_by(`comuna origen`) %>%
dplyr::summarise(Conteo = n())
destino <- datos %>%
dplyr::group_by(`comuna destino`) %>%
dplyr::summarise(Conteo = n())
origen$`comuna origen` <- as.numeric(origen$`comuna origen`)
destino$`comuna destino` <- as.numeric(destino$`comuna destino`)
comunas$conteo = origen[comunas$comuna,]$Conteo
print(comunas@data)
## OBJECTID gid comuna nombre conteo
## 0 1 107 2 Comuna 2 2250
## 1 2 108 1 Comuna 1 626
## 2 3 109 3 Comuna 3 1610
## 3 4 110 19 Comuna 19 2241
## 4 5 103 15 Comuna 15 974
## 5 6 104 17 Comuna 17 1762
## 6 7 105 18 Comuna 18 1208
## 7 8 106 22 Comuna 22 985
## 8 9 89 6 Comuna 6 797
## 9 10 90 4 Comuna 4 1193
## 10 11 91 5 Comuna 5 521
## 11 12 92 7 Comuna 7 583
## 12 13 93 8 Comuna 8 862
## 13 14 94 9 Comuna 9 737
## 14 15 95 21 Comuna 21 693
## 15 16 96 13 Comuna 13 1031
## 16 17 97 12 Comuna 12 257
## 17 18 98 14 Comuna 14 575
## 18 19 99 11 Comuna 11 717
## 19 20 100 10 Comuna 10 1094
## 20 21 101 20 Comuna 20 599
## 21 22 102 16 Comuna 16 836
centros <- coordinates(comunas) # para etiquetar cada comuna
spplot(
comunas[,5],
main = "Origen de viajes",
cuts = 6,
col.regions = brewer.pal(n = 7, name = "Blues"),
sp.layout = list(
list("sp.text", centros, comunas@data[,3], cex = 0.7, font = 1)
)
)
El mapa evidencia que ciertas comunas, como la 2 y la 19, concentran un nĂșmero elevado de viajes que inician en esos lugares, lo que podrĂa indicar que son zonas residenciales o puntos de partida relevantes dentro de la ciudad; en contraste, comunas con conteos menores presentan menor emisiĂłn de viajes, posiblemente por ser ĂĄreas con menor densidad poblacional o actividad generadora de desplazamientos.
ori_bici<-datos %>% filter(`TIPO DE VEHĂCULO`==1) %>%group_by(`comuna origen`)%>%summarise(conteo = n())
ori_bici$`comuna origen`<- as.numeric(ori_bici$`comuna origen`)
ori_moto<-datos %>% filter(`TIPO DE VEHĂCULO`==2) %>%group_by(`comuna origen`)%>%summarise(conteo = n())
ori_moto$`comuna origen`<- as.numeric(ori_moto$`comuna origen`)
ori_carro<-datos %>% filter(`TIPO DE VEHĂCULO`==3) %>%group_by(`comuna origen`)%>%summarise(conteo = n())
ori_carro$`comuna origen`<- as.numeric(ori_carro$`comuna origen`)
comunas$conteo_bici = ori_bici[comunas$comuna,]$conteo
comunas$conteo_moto = ori_moto[comunas$comuna,]$conteo
comunas$conteo_auto = ori_carro[comunas$comuna,]$conteo
p1=spplot(
comunas[,6],
cuts = 6,
sub = "Bicicleta",
col.regions = brewer.pal(n = 7, name = "Blues"),
sp.layout = list(
list("sp.text", centros, comunas@data[,3], cex = 0.7, font = 1)
)
)
p2=spplot(
comunas[,7],
cuts = 6,
sub = "Moto",
col.regions = brewer.pal(n = 7, name = "Blues"),
sp.layout = list(
list("sp.text", centros, comunas@data[,3], cex = 0.7, font = 1)
)
)
p3=spplot(
comunas[,8],
cuts = 6,
sub = "Carro",
col.regions = brewer.pal(n = 7, name = "Blues"),
sp.layout = list(
list("sp.text", centros, comunas@data[,3], cex = 0.7, font = 1)
)
)
grid.arrange(p1,p2,p3,ncol=3,nrow=1)
Origen en bicicleta: De acuerdo con el grĂĄfico, comunas como la 2, 3 o 19 tienden a aparecer con valores mĂĄs altos de viajes en bicicleta, reflejando zonas donde las personas usan este modo de transporte con mĂĄs frecuencia.
Origen en moto: La moto es un modo muy extendido en varias comunas de la ciudad. En el mapa de origen por moto, suelen dominar aquellas comunas ya conocidas por altos conteos totales, como la 2, 17 o 19.
Origen en carro: Para el automĂłvil, se repite el patrĂłn de comunas con alta actividad (por ejemplo, la 2, 3, 17 y 19), que acumulan los mayores valores de viajes que comienzan en carro. Ello apunta a zonas con niveles de ingresos suficientes para el uso de vehĂculo particular o con infraestructura que favorece el desplazamiento en automĂłvil.
comunas=shapefile("~/Casos/cali/Comunas.shp")
## Warning in OGRSpatialRef(dsn, layer, morphFromESRI = morphFromESRI, dumpSRS
## = dumpSRS, : Discarded ellps _custom in Proj4 definition: +proj=tmerc
## +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63
## +a=6379137 +rf=298.257222101 +units=m +no_defs
## Warning in OGRSpatialRef(dsn, layer, morphFromESRI = morphFromESRI, dumpSRS
## = dumpSRS, : Discarded datum D_<custom> in Proj4 definition: +proj=tmerc
## +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63
## +a=6379137 +rf=298.257222101 +units=m +no_defs
## Warning in showSRID(wkt2, "PROJ"): Discarded ellps _custom in Proj4 definition:
## +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18
## +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs +type=crs
## Warning in showSRID(wkt2, "PROJ"): Discarded datum D_<custom> in Proj4
## definition
comunas$conteo = destino[comunas$comuna,]$Conteo
print(comunas@data)
## OBJECTID gid comuna nombre conteo
## 0 1 107 2 Comuna 2 3773
## 1 2 108 1 Comuna 1 187
## 2 3 109 3 Comuna 3 2887
## 3 4 110 19 Comuna 19 2441
## 4 5 103 15 Comuna 15 481
## 5 6 104 17 Comuna 17 1616
## 6 7 105 18 Comuna 18 526
## 7 8 106 22 Comuna 22 1561
## 8 9 89 6 Comuna 6 570
## 9 10 90 4 Comuna 4 1497
## 10 11 91 5 Comuna 5 440
## 11 12 92 7 Comuna 7 598
## 12 13 93 8 Comuna 8 830
## 13 14 94 9 Comuna 9 1055
## 14 15 95 21 Comuna 21 434
## 15 16 96 13 Comuna 13 560
## 16 17 97 12 Comuna 12 207
## 17 18 98 14 Comuna 14 316
## 18 19 99 11 Comuna 11 483
## 19 20 100 10 Comuna 10 741
## 20 21 101 20 Comuna 20 303
## 21 22 102 16 Comuna 16 645
centros <- coordinates(comunas) # para etiquetar cada comuna
spplot(
comunas[,5],
main = "Destino de viajes",
cuts = 6,
col.regions = brewer.pal(n = 7, name = "Blues"),
sp.layout = list(
list("sp.text", centros, comunas@data[,3], cex = 0.7, font = 1)
)
)
Observa que comunas como la 2 y la 3 destacan tambiĂ©n como principales receptoras de viajes, lo que indica una fuerte atracciĂłn laboral o comercial en esas zonas. Por otro lado, comunas con menos arribos podrĂan ser mayormente residenciales o con menor oferta de servicios, generando menos flujos hacia ellas.
des_bici<-datos %>% filter(`TIPO DE VEHĂCULO`==1) %>%group_by(`comuna destino`)%>%summarise(conteo = n())
des_bici$`comuna destino`<- as.numeric(des_bici$`comuna destino`)
des_moto<-datos %>% filter(`TIPO DE VEHĂCULO`==2) %>%group_by(`comuna destino`)%>%summarise(conteo = n())
des_moto$`comuna destino`<- as.numeric(des_moto$`comuna destino`)
des_carro<-datos %>% filter(`TIPO DE VEHĂCULO`==3) %>%group_by(`comuna destino`)%>%summarise(conteo = n())
des_carro$`comuna destino`<- as.numeric(des_carro$`comuna destino`)
comunas$conteo_bici = des_bici[comunas$comuna,]$conteo
comunas$conteo_moto = des_moto[comunas$comuna,]$conteo
comunas$conteo_auto = des_carro[comunas$comuna,]$conteo
p1=spplot(
comunas[,6],
cuts = 6,
sub = "Bicicleta",
col.regions = brewer.pal(n = 7, name = "Blues"),
sp.layout = list(
list("sp.text", centros, comunas@data[,3], cex = 0.7, font = 1)
)
)
p2=spplot(
comunas[,7],
cuts = 6,
sub = "Moto",
col.regions = brewer.pal(n = 7, name = "Blues"),
sp.layout = list(
list("sp.text", centros, comunas@data[,3], cex = 0.7, font = 1)
)
)
p3=spplot(
comunas[,8],
cuts = 6,
sub = "Carro",
col.regions = brewer.pal(n = 7, name = "Blues"),
sp.layout = list(
list("sp.text", centros, comunas@data[,3], cex = 0.7, font = 1)
)
)
grid.arrange(p1,p2,p3,ncol=3,nrow=1)
Destino en bicicleta: Comunas como la 2 o la 3 predominan en los destinos de viajes en bicicleta.
Destino en moto: Para la llegada en motocicleta nuevamente la 2, 3 y 19 suelen registrar conteos elevados.
Destino en carro: Comunas como la 2, 3 y 19 continĂșan figurando como destino en la parte superior de la escala, para el caso de viajes en carro.