comunas <- st_read("Casos/cali/Comunas.shp")
## Reading layer `Comunas' from data source
## `D:\Documentos\Maestria_Ciencia_de_datos\Analisis_espacial\Unidad 1\Casos\cali\Comunas.shp'
## using driver `ESRI Shapefile'
## Simple feature collection with 22 features and 4 fields
## Geometry type: POLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: MAGNA_Colombia_Cali
comunas
## Simple feature collection with 22 features and 4 fields
## Geometry type: POLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: MAGNA_Colombia_Cali
## First 10 features:
## OBJECTID gid comuna nombre geometry
## 1 1 107 2 Comuna 2 POLYGON ((1059648 874236.3,...
## 2 2 108 1 Comuna 1 POLYGON ((1054094 875172.8,...
## 3 3 109 3 Comuna 3 POLYGON ((1061757 874615.5,...
## 4 4 110 19 Comuna 19 POLYGON ((1057817 873269.4,...
## 5 5 103 15 Comuna 15 POLYGON ((1065485 869864.1,...
## 6 6 104 17 Comuna 17 POLYGON ((1061675 868320.9,...
## 7 7 105 18 Comuna 18 POLYGON ((1059061 867223.6,...
## 8 8 106 22 Comuna 22 POLYGON ((1059486 864976.4,...
## 9 9 89 6 Comuna 6 POLYGON ((1065143 879409.5,...
## 10 10 90 4 Comuna 4 POLYGON ((1063833 877507.1,...
OrigenDestino <- read_excel("Casos/OrigenDestino.xlsx")
OrigenDestino
## # A tibble: 20,127 × 3
## vehiculo comuna_origen comuna_destino
## <chr> <dbl> <dbl>
## 1 Moto 2 22
## 2 Moto 6 2
## 3 Automovil 6 4
## 4 Automovil 3 2
## 5 Automovil 4 2
## 6 Automovil 6 2
## 7 Moto 4 2
## 8 Moto 2 3
## 9 Moto 13 2
## 10 Automovil 6 19
## # ℹ 20,117 more rows
comunas_etiquetas <- comunas %>%
st_point_on_surface()
## Warning: st_point_on_surface assumes attributes are constant over geometries
origen_totales <- OrigenDestino %>%
group_by(comuna_origen) %>%
summarise(total_origen = n())
mapa1_data <- comunas %>%
left_join(origen_totales, by = c("comuna" = "comuna_origen"))
ggplot(mapa1_data) +
geom_sf(aes(fill = total_origen)) +
geom_sf_text(data = comunas_etiquetas, aes(label = comuna), color = "white", size = 3) +
scale_fill_viridis_c(na.value = "white") +
labs(title = "Total de comuna_origen por comuna")
tabla1_raw <- OrigenDestino %>%
group_by(comuna_origen) %>%
summarise(total = n()) %>%
arrange(desc(total))
tabla1 <- tabla1_raw %>%
pivot_wider(names_from = comuna_origen, values_from = total, values_fill = 0)
kable(tabla1, caption = "Tabla 1: Total de viajes por comuna de origen")
| 2 | 19 | 17 | 3 | 18 | 4 | 10 | 13 | 22 | 15 | 8 | 16 | 6 | 11 | 9 | 21 | 1 | 20 | 7 | 14 | 5 | 12 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2045 | 2030 | 1618 | 1464 | 1111 | 1072 | 1010 | 927 | 900 | 887 | 786 | 768 | 720 | 649 | 648 | 630 | 562 | 539 | 531 | 526 | 473 | 231 |
Los trayectos se originan principalmente en las comunas 2, 19 y 17, mientras que las comunas 12 y 5 son de donde menos registros de inicio de trayectoria se reportan.
destino_totales <- OrigenDestino %>%
group_by(comuna_destino) %>%
summarise(total_destino = n())
mapa2_data <- comunas %>%
left_join(destino_totales, by = c("comuna" = "comuna_destino"))
ggplot(mapa2_data) +
geom_sf(aes(fill = total_destino)) +
geom_sf_text(data = comunas_etiquetas, aes(label = comuna), color = "white", size = 3) +
scale_fill_viridis_c(na.value = "white") +
labs(title = "Total de comuna_destino por comuna")
tabla2_raw <- OrigenDestino %>%
group_by(comuna_destino) %>%
summarise(total = n()) %>%
arrange(desc(total))
tabla2 <- tabla2_raw %>%
pivot_wider(names_from = comuna_destino, values_from = total, values_fill = 0)
kable(tabla2, caption = "Tabla 2: Total de viajes por comuna de destino")
| 2 | 3 | 19 | 17 | 22 | 4 | 9 | 8 | 10 | 16 | 7 | 13 | 6 | 18 | 15 | 11 | 5 | 21 | 14 | 20 | 12 | 1 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 3445 | 2597 | 2206 | 1488 | 1425 | 1354 | 950 | 753 | 678 | 596 | 539 | 502 | 494 | 484 | 448 | 447 | 402 | 390 | 290 | 277 | 190 | 172 |
Los trayectos finalizan principalmente en las comunas 2, 3 y 19, mientras que las comunas 1 y 12 son es donde menos registros de finalización de trayectoria se reportan.
origen_bici <- OrigenDestino %>%
filter(vehiculo == "Bicicleta") %>%
group_by(comuna_origen) %>%
summarise(total = n())
mapa3_data <- comunas %>%
left_join(origen_bici, by = c("comuna" = "comuna_origen"))
ggplot(mapa3_data) +
geom_sf(aes(fill = total)) +
geom_sf_text(data = comunas_etiquetas, aes(label = comuna), color = "white", size = 3) +
scale_fill_viridis_c(na.value = "white") +
labs(title = "Origen en Bicicleta")
origen_moto <- OrigenDestino %>%
filter(vehiculo == "Moto") %>%
group_by(comuna_origen) %>%
summarise(total = n())
mapa4_data <- comunas %>%
left_join(origen_moto, by = c("comuna" = "comuna_origen"))
ggplot(mapa4_data) +
geom_sf(aes(fill = total)) +
geom_sf_text(data = comunas_etiquetas, aes(label = comuna), color = "white", size = 3) +
scale_fill_viridis_c(na.value = "white") +
labs(title = "Origen en Moto")
origen_auto <- OrigenDestino %>%
filter(vehiculo == "Automovil") %>%
group_by(comuna_origen) %>%
summarise(total = n())
mapa5_data <- comunas %>%
left_join(origen_auto, by = c("comuna" = "comuna_origen"))
ggplot(mapa5_data) +
geom_sf(aes(fill = total)) +
geom_sf_text(data = comunas_etiquetas, aes(label = comuna), color = "white", size = 3) +
scale_fill_viridis_c(na.value = "white") +
labs(title = "Origen en Automóvil")
destino_bici <- OrigenDestino %>%
filter(vehiculo == "Bicicleta") %>%
group_by(comuna_destino) %>%
summarise(total = n())
mapa6_data <- comunas %>%
left_join(destino_bici, by = c("comuna" = "comuna_destino"))
ggplot(mapa6_data) +
geom_sf(aes(fill = total)) +
geom_sf_text(data = comunas_etiquetas, aes(label = comuna), color = "white", size = 3) +
scale_fill_viridis_c(na.value = "white") +
labs(title = "Destino en Bicicleta")
destino_moto <- OrigenDestino %>%
filter(vehiculo == "Moto") %>%
group_by(comuna_destino) %>%
summarise(total = n())
mapa7_data <- comunas %>%
left_join(destino_moto, by = c("comuna" = "comuna_destino"))
ggplot(mapa7_data) +
geom_sf(aes(fill = total)) +
geom_sf_text(data = comunas_etiquetas, aes(label = comuna), color = "white", size = 3) +
scale_fill_viridis_c(na.value = "white") +
labs(title = "Destino en Moto")
destino_auto <- OrigenDestino %>%
filter(vehiculo == "Automovil") %>%
group_by(comuna_destino) %>%
summarise(total = n())
mapa8_data <- comunas %>%
left_join(destino_auto, by = c("comuna" = "comuna_destino"))
ggplot(mapa8_data) +
geom_sf(aes(fill = total)) +
geom_sf_text(data = comunas_etiquetas, aes(label = comuna), color = "white", size = 3) +
scale_fill_viridis_c(na.value = "white") +
labs(title = "Destino en Automóvil")