Mapas

El presente documento constituye el inicio de la creación de mapas con información geográfica obtenida de archivos Shapefile. En él, se evalúan los datos de transporte de la ciudad de Cali, con el objetivo de catalogar la densidad de población por comuna, tanto en origen como en destino para los viajes. Además, se realiza una segregación por tipo de vehículo, específicamente para tres categorías: carro, moto y bicicleta.

General

Primero, se presentan los mapas generales tanto para origen como para destino. En la parte derecha de los mismos, se puede observar la escala, donde el color amarillo indica las áreas con mayor densidad de vehículos en cada una de las categorías (origen y destino).

comunas <- st_read("C:/Users/vicod/Documents/Maestria/analisis de datos espaciales y geograficos/unidad 1/Casos/Casos/cali/Comunas.shp", 
                  quiet = TRUE)

archivo_excel <- "C:/Users/vicod/Documents/Maestria/analisis de datos espaciales y geograficos/unidad 1/Casos/Casos/EncuestaOrigenDestino.xlsx"
df <- read_excel(archivo_excel)
## New names:
## • `MUNICIPIO` -> `MUNICIPIO...7`
## • `DEPARTAMENTO / LOCALIDAD / COMUNA / DISTRITO / BARRIO / VEREDA / HITO /
##   DIRECCIÓN` -> `DEPARTAMENTO / LOCALIDAD / COMUNA / DISTRITO / BARRIO / VEREDA
##   / HITO / DIRECCIÓN...8`
## • `MUNICIPIO` -> `MUNICIPIO...11`
## • `DEPARTAMENTO / LOCALIDAD / COMUNA / DISTRITO / BARRIO / VEREDA / HITO /
##   DIRECCIÓN` -> `DEPARTAMENTO / LOCALIDAD / COMUNA / DISTRITO / BARRIO / VEREDA
##   / HITO / DIRECCIÓN...12`
## • `OTRO ¿CUÁL?` -> `OTRO ¿CUÁL?...17`
## • `OTRO ¿CUÁL?` -> `OTRO ¿CUÁL?...24`
df_seleccionado <- df[, c("comuna origen", "comuna destino", "TIPO DE VEHÍCULO")]
head(df_seleccionado)
## # A tibble: 6 × 3
##   `comuna origen` `comuna destino` `TIPO DE VEHÍCULO`
##   <chr>           <chr>                         <dbl>
## 1 02              22                                2
## 2 Fuera de Cali   19                                3
## 3 Fuera de Cali   03                                2
## 4 Fuera de Cali   09                                2
## 5 Fuera de Cali   02                                2
## 6 Fuera de Cali   02                                3
comuna_origen_count <- as.data.frame(table(df_seleccionado$`comuna origen`))
colnames(comuna_origen_count) <- c("comuna", "frecuencia")
comunas_origen <- merge(comunas, comuna_origen_count, by.x = "comuna", by.y = "comuna", all.x = TRUE)
comunas_origen$frecuencia[is.na(comunas_origen$frecuencia)] <- 0
ggplot(data = comunas_origen) +
  geom_sf(aes(fill = frecuencia)) +  # Colorear por frecuencia
  scale_fill_viridis_c(option = "plasma", trans = "sqrt") +  # Escala de color
  labs(title = "Frecuencia de comunas de origen", fill = "Frecuencia") +
  theme_minimal()

comuna_destino_count <- as.data.frame(table(df_seleccionado$`comuna destino`))
colnames(comuna_destino_count) <- c("comuna", "frecuencia")
comunas_destino <- merge(comunas, comuna_destino_count, by.x = "comuna", by.y = "comuna", all.x = TRUE)
comunas_destino$frecuencia[is.na(comunas_destino$frecuencia)] <- 0
ggplot(data = comunas_destino) +
  geom_sf(aes(fill = frecuencia)) +  # Colorear por frecuencia
  scale_fill_viridis_c(option = "plasma", trans = "sqrt") +  # Escala de color
  labs(title = "Frecuencia de comunas de destino", fill = "Frecuencia") +
  theme_minimal()

Por vehículo

Para realizar un análisis más avanzado del mismo caso, se decidió hacer una segregación en función de los vehículos utilizados para cada viaje.

Bicicleta

Los siguientes mapas muestran las comunas de origen y destino para las personas que se movilizan utilizando bicicletas.

#bicicleta
df_vehiculo_1 <- df_seleccionado[df_seleccionado$`TIPO DE VEHÍCULO` == 1, ]

comuna_origen_v_1 <- as.data.frame(table(df_vehiculo_1$`comuna origen`))
colnames(comuna_origen_v_1) <- c("comuna", "frecuencia")
comunas_origen_v_1 <- merge(comunas, comuna_origen_v_1, by.x = "comuna", by.y = "comuna", all.x = TRUE)
comunas_origen_v_1$frecuencia[is.na(comunas_origen_v_1$frecuencia)] <- 0

# origen bici
ggplot(data = comunas_origen_v_1) +
  geom_sf(aes(fill = frecuencia)) +
  scale_fill_viridis_c(option = "plasma", trans = "sqrt") +
  labs(title = "Frecuencia de comunas de origen - Bicicleta", fill = "Frecuencia") +
  theme_minimal()

comuna_destino_v_1 <- as.data.frame(table(df_vehiculo_1$`comuna origen`))
colnames(comuna_destino_v_1) <- c("comuna", "frecuencia")
comunas_destino_v_1 <- merge(comunas, comuna_destino_v_1, by.x = "comuna", by.y = "comuna", all.x = TRUE)
comunas_destino_v_1$frecuencia[is.na(comunas_destino_v_1$frecuencia)] <- 0

# destino bici
ggplot(data = comunas_destino_v_1) +
  geom_sf(aes(fill = frecuencia)) +
  scale_fill_viridis_c(option = "plasma", trans = "sqrt") +
  labs(title = "Frecuencia de comunas de destino - Bicicleta", fill = "Frecuencia") +
  theme_minimal()

Moto

Los siguientes mapas muestran las comunas de origen y destino para las personas que se movilizan utilizando moto.

# moto
df_vehiculo_2 <- df_seleccionado[df_seleccionado$`TIPO DE VEHÍCULO` == 2, ]

comuna_origen_v_2 <- as.data.frame(table(df_vehiculo_2$`comuna origen`))
colnames(comuna_origen_v_2) <- c("comuna", "frecuencia")
comunas_origen_v_2 <- merge(comunas, comuna_origen_v_2, by.x = "comuna", by.y = "comuna", all.x = TRUE)
comunas_origen_v_2$frecuencia[is.na(comunas_origen_v_2$frecuencia)] <- 0

# origen moto
ggplot(data = comunas_origen_v_2) +
  geom_sf(aes(fill = frecuencia)) +
  scale_fill_viridis_c(option = "plasma", trans = "sqrt") +
  labs(title = "Frecuencia de comunas de origen - Moto", fill = "Frecuencia") +
  theme_minimal()

comuna_destino_v_2 <- as.data.frame(table(df_vehiculo_2$`comuna origen`))
colnames(comuna_destino_v_2) <- c("comuna", "frecuencia")
comunas_destino_v_2 <- merge(comunas, comuna_destino_v_2, by.x = "comuna", by.y = "comuna", all.x = TRUE)
comunas_destino_v_2$frecuencia[is.na(comunas_destino_v_2$frecuencia)] <- 0

# destino moto
ggplot(data = comunas_destino_v_2) +
  geom_sf(aes(fill = frecuencia)) +
  scale_fill_viridis_c(option = "plasma", trans = "sqrt") +
  labs(title = "Frecuencia de comunas de destino - Moto", fill = "Frecuencia") +
  theme_minimal()

Carro

Los siguientes mapas muestran las comunas de origen y destino para las personas que se movilizan utilizando carro.

# Carro
df_vehiculo_3 <- df_seleccionado[df_seleccionado$`TIPO DE VEHÍCULO` == 3, ]


comuna_origen_v_3 <- as.data.frame(table(df_vehiculo_3$`comuna origen`))
colnames(comuna_origen_v_3) <- c("comuna", "frecuencia")
comunas_origen_v_3 <- merge(comunas, comuna_origen_v_3, by.x = "comuna", by.y = "comuna", all.x = TRUE)
comunas_origen_v_3$frecuencia[is.na(comunas_origen_v_3$frecuencia)] <- 0

# origen carro
ggplot(data = comunas_origen_v_3) +
  geom_sf(aes(fill = frecuencia)) +
  scale_fill_viridis_c(option = "plasma", trans = "sqrt") +
  labs(title = "Frecuencia de comunas de origen - Carro", fill = "Frecuencia") +
  theme_minimal()

comuna_destino_v_3 <- as.data.frame(table(df_vehiculo_3$`comuna origen`))
colnames(comuna_destino_v_3) <- c("comuna", "frecuencia")
comunas_destino_v_3 <- merge(comunas, comuna_destino_v_3, by.x = "comuna", by.y = "comuna", all.x = TRUE)
comunas_destino_v_3$frecuencia[is.na(comunas_destino_v_3$frecuencia)] <- 0

# destino CARRO
ggplot(data = comunas_destino_v_3) +
  geom_sf(aes(fill = frecuencia)) +
  scale_fill_viridis_c(option = "plasma", trans = "sqrt") +
  labs(title = "Frecuencia de comunas de destino - Carro", fill = "Frecuencia") +
  theme_minimal()