ELIZABETH AGUILAR
ES4-001
library(sf)
## Warning: package 'sf' was built under R version 4.3.3
## Linking to GEOS 3.11.2, GDAL 3.8.2, PROJ 9.3.1; sf_use_s2() is TRUE
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.3.3
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.3.3
library(tmap)
## Warning: package 'tmap' was built under R version 4.3.3
## Breaking News: tmap 3.x is retiring. Please test v4, e.g. with
## remotes::install_github('r-tmap/tmap')
*utilizaremos getwd y setwd para ver donde esta ubicado el proyecto y en que carpeta se va a trabajar
getwd()
## [1] "C:/SIG/PROYECTOS SIG/Trabajo-1-SIG/Base de datos"
setwd("C:\\SIG\\PROYECTOS SIG\\Trabajo-1-SIG\\Base de datos")
# Cargar archivos shapefile
provincias_sf <- st_read("Provincias.shx")
## Reading layer `Provincias' from data source
## `C:\SIG\PROYECTOS SIG\Trabajo-1-SIG\Base de datos\Provincias.shx'
## using driver `ESRI Shapefile'
## Simple feature collection with 25 features and 2 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -732143.5 ymin: 9445216 xmax: 1147852 ymax: 10189400
## Projected CRS: WGS 84 / UTM zone 17S
cantones_sf <- st_read("Cantones.shx")
## Reading layer `Cantones' from data source
## `C:\SIG\PROYECTOS SIG\Trabajo-1-SIG\Base de datos\Cantones.shx'
## using driver `ESRI Shapefile'
## Simple feature collection with 224 features and 3 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -732143.5 ymin: 9445216 xmax: 1147852 ymax: 10189400
## Projected CRS: WGS 84 / UTM zone 17S
parroquias_sf <- st_read("Parroquias.shx")
## Reading layer `Parroquias' from data source
## `C:\SIG\PROYECTOS SIG\Trabajo-1-SIG\Base de datos\Parroquias.shx'
## using driver `ESRI Shapefile'
## Simple feature collection with 1040 features and 7 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -732143.5 ymin: 9445216 xmax: 1147852 ymax: 10189400
## Projected CRS: WGS 84 / UTM zone 17S
# Realizar join entre provincias y cantones
mapas_sf <- st_join(provincias_sf, cantones_sf, by = "DPA_PROVIN")
# Realizar join con parroquias
mapas2_sf <- st_join(mapas_sf, parroquias_sf, by = "DPA_PROVIN")
# Crear los mapas
plot(st_geometry(provincias_sf), axes=TRUE)
plot(st_geometry(cantones_sf), axes=TRUE)
plot(st_geometry(parroquias_sf), axes=TRUE)
# Filtrar las provincias de la Sierra
sierra_provincias <- provincias_sf[provincias_sf$DPA_DESPRO %in% c("AZUAY", "BOLIVAR", "CAÑAR", "CARCHI", "COTOPAXI", "CHIMBORAZO", "IMBABURA", "LOJA", "PICHINCHA", "TUNGURAHUA"), ]
# Crear el mapa de la Sierra del Ecuador
ggplot() +
geom_sf(data = provincias_sf, fill = "gray90", color = "gray50", size = 0.2) + # Mapa del Ecuador en gris claro
geom_sf(data = sierra_provincias, aes(fill = DPA_DESPRO), color = "black", size = 0.5) + # Provincias de la Sierra en colores específicos
geom_sf_text(data = sierra_provincias, aes(label = DPA_PROVIN), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de las provincias de la Sierra
labs(title = "Provincias de la Sierra del Ecuador") +
theme_minimal()
# Crear el perfil de la Región Sierra del Ecuador
perfil_sierra <- ggplot() +
geom_sf(data = sierra_provincias, aes(fill = "blue", color = "blue"), size = 0.5) + # Rellenar y contornear las provincias de la Sierra en azul
labs(title = "Perfil de la Región Sierra del Ecuador") +
theme_minimal()
# Mostrar el gráfico
perfil_sierra
# Filtrar las provincias de la Sierra
costa_provincias <- provincias_sf[provincias_sf$DPA_DESPRO %in% c("SANTO DOMINGO DE LOS TSACHILAS", "EL ORO", "ESMERALDAS", "MANABI", "LOS RIOS", "GUAYAS", "SANTA ELENA"), ]
# Crear el mapa de la Costa del Ecuador
ggplot() +
geom_sf(data = provincias_sf, fill = "gray90", color = "gray50", size = 0.2) + # Mapa del Ecuador en gris claro
geom_sf(data = costa_provincias, aes(fill = DPA_DESPRO), color = "black", size = 0.5) + # Provincias de la Costa en colores específicos
geom_sf_text(data = costa_provincias, aes(label = DPA_PROVIN), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de las provincias de la Costa
labs(title = "Provincias de la Costa del Ecuador") +
theme_minimal()
*Perfil de la costa
# Crear el perfil de la Región Costa del Ecuador
perfil_costa <- ggplot() +
geom_sf(data = costa_provincias, aes(fill = "blue", color = "blue"), size = 0.5) + # Rellenar y contornear las provincias de la Costa en azul
labs(title = "Perfil de la Región Costa del Ecuador") +
theme_minimal()
# Mostrar el gráfico
perfil_costa
*Haremos la union de estas dos Regiones
# Crear el mapa combinado de la Sierra y la Costa del Ecuador
ggplot() +
geom_sf(data = provincias_sf, fill = "gray90", color = "gray50", size = 0.2) + # Mapa del Ecuador en gris claro
geom_sf(data = sierra_provincias, aes(fill = "Sierra"), color = "black", size = 0.5) + # Provincias de la Sierra en colores específicos
geom_sf(data = costa_provincias, aes(fill = "Costa"), color = "black", size = 0.5) + # Provincias de la Costa en colores específicos
geom_sf_text(data = sierra_provincias, aes(label = DPA_PROVIN), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de las provincias de la Sierra
geom_sf_text(data = costa_provincias, aes(label = DPA_PROVIN), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de las provincias de la Costa
scale_fill_manual(values = c("Sierra" = "blue", "Costa" = "green"), name = "Región") +
labs(title = "Provincias de la Sierra y Costa del Ecuador") +
theme_minimal()
*Combinamos las capas de sierra y costa para visualizar de un solo color
# Filtrar las provincias de la Sierra
sierra_provincias <- provincias_sf %>%
filter(DPA_DESPRO %in% c("AZUAY", "BOLIVAR", "CAÑAR", "CARCHI", "COTOPAXI", "CHIMBORAZO", "IMBABURA", "LOJA", "PICHINCHA", "TUNGURAHUA"))
# Filtrar las provincias de la Costa
costa_provincias <- provincias_sf %>%
filter(DPA_DESPRO %in% c("SANTO DOMINGO DE LOS TSACHILAS", "EL ORO", "ESMERALDAS", "MANABI", "LOS RIOS", "GUAYAS", "SANTA ELENA"))
# Combinar las provincias de la Sierra y la Costa
provincias_combined <- rbind(sierra_provincias, costa_provincias)
# Visualizar el mapa combinado con un solo color
ggplot() +
geom_sf(data = provincias_sf, fill = "green", color = "black", size = 0.2) + # Mapa del Ecuador en gris claro
geom_sf(data = provincias_combined, fill = "blue", color = "black", size = 0.5) + # Provincias combinadas en un solo color
geom_sf_text(data = provincias_combined, aes(label = DPA_PROVIN), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de las provincias combinadas
labs(title = "Provincias de la Sierra y Costa del Ecuador") +
theme_minimal()
*Sacamos el perimetro de la costa y la sierra de acuerdo al ejemplo que hicimos anteriormente
# Filtrar las provincias de la Sierra
sierra_provincias1 <- provincias_sf %>%
filter(DPA_DESPRO %in% c("AZUAY", "BOLIVAR", "CAÑAR", "CARCHI", "COTOPAXI", "CHIMBORAZO", "IMBABURA", "LOJA", "PICHINCHA", "TUNGURAHUA"))
# Filtrar las provincias de la Costa
costa_provincias1 <- provincias_sf %>%
filter(DPA_DESPRO %in% c("SANTO DOMINGO DE LOS TSACHILAS", "EL ORO", "ESMERALDAS", "MANABI", "LOS RIOS", "GUAYAS", "SANTA ELENA"))
# Calcular el perímetro de las provincias de la Sierra y la Costa
sierra_provincias1$perimetro <- st_length(st_cast(sierra_provincias1, "MULTILINESTRING"))
costa_provincias1$perimetro <- st_length(st_cast(costa_provincias1, "MULTILINESTRING"))
*Selecionamos la Provincia de esmeraldas
# Filtrar la provincia con DPA_PROVIN = 8 (Pichincha)
provincia_8 <- provincias_sf %>%
filter(DPA_PROVIN == "08")
# Visualizar el mapa de la provincia seleccionada
ggplot() +
geom_sf(data = provincias_sf, fill = "gray90", color = "gray50", size = 0.2) + # Mapa del Ecuador en gris claro
geom_sf(data = provincia_8, aes(fill = DPA_DESPRO), color = "black", size = 0.5) + # Provincia filtrada en color específico
geom_sf_text(data = provincia_8, aes(label = DPA_DESPRO), size = 3, color = "black", check_overlap = TRUE) + # Etiqueta de la provincia seleccionada
labs(title = "Provincia de Pichincha (DPA_PROVIN = 08)") +
theme_minimal()
*Visualizar la provincia de esmeraldas y Quito
# Seleccionar los cantones según los criterios especificados
cantones_seleccionados <- cantones_sf %>%
filter(DPA_PROVIN == "08" | DPA_CANTON == "1701")
# Visualizar el mapa de los cantones seleccionados
ggplot() +
geom_sf(data = cantones_sf, fill = "gray90", color = "gray50", size = 0.2) + # Mapa de todos los cantones en gris claro
geom_sf(data = cantones_seleccionados, aes(fill = DPA_CANTON), color = "black", size = 0.5) + # Cantones seleccionados en colores específicos
geom_sf_text(data = filter(cantones_sf, DPA_PROVIN == "08"), aes(label = DPA_PROVIN), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de la provincia 08
labs(title = "Cantones seleccionados (DPA_PROVIN=08 OR DPA_CANTON=1701)") +
theme_minimal()
*Hacer el contorno del mapa mas gruesos(lineas)
# Crear el mapa
a <- ggplot() +
geom_sf(data = provincias_sf, fill = "pink", color = "black", size = 1) + # Ajustar el tamaño de las líneas aquí (size = 1)
labs(title = "Mapa de Ecuador") +
theme_minimal()
# Mostrar el mapa
print(a)
# Filtrar los cantones según las condiciones especificadas
cantones_filtrados <- cantones_sf %>%
filter(DPA_PROVIN == '08' | DPA_CANTON == '1701' | grepl('01$', DPA_CANTON))
# Visualizar el mapa con ggplot2
ggplot() +
geom_sf(data = cantones_sf, fill = "gray90", color = "gray50", size = 0.2) + # Mapa de todos los cantones en gris claro
geom_sf(data = cantones_filtrados, aes(fill = DPA_CANTON), color = "black", size = 0.5) + # Cantones filtrados en colores específicos
geom_sf_text(data = cantones_filtrados, aes(label = DPA_CANTON), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de los cantones filtrados
labs(title = "Cantones específicos del Ecuador") +
theme_minimal()
cantones_sf <- st_transform(cantones_sf, crs = 32717)
cantones_sf$area_m2 <- st_area(cantones_sf)
cantones_sf$area_km2 <- cantones_sf$area_m2 / 1e6
print(head(cantones_sf))
## Simple feature collection with 6 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 682311.4 ymin: 9756425 xmax: 739865.1 ymax: 9872842
## Projected CRS: WGS 84 / UTM zone 17S
## DPA_CANTON DPA_DESCAN DPA_PROVIN geometry
## 1 0201 GUARANDA 02 MULTIPOLYGON (((710807.6 98...
## 2 0202 CHILLANES 02 MULTIPOLYGON (((720530.2 97...
## 3 0203 CHIMBO 02 MULTIPOLYGON (((711141.9 98...
## 4 0204 ECHEANDIA 02 MULTIPOLYGON (((700585.5 98...
## 5 0205 SAN MIGUEL 02 MULTIPOLYGON (((721746.3 98...
## 6 0206 CALUMA 02 MULTIPOLYGON (((696532.6 98...
## area_m2 area_km2
## 1 1891837946 [m^2] 1891.8379 [m^2]
## 2 662432538 [m^2] 662.4325 [m^2]
## 3 261250674 [m^2] 261.2507 [m^2]
## 4 230614466 [m^2] 230.6145 [m^2]
## 5 573169817 [m^2] 573.1698 [m^2]
## 6 176849577 [m^2] 176.8496 [m^2]
# Filtrar los cantones según los criterios especificados
cantones_filtrados <- cantones_sf %>%
filter(DPA_PROVIN == 8 |
DPA_CANTON == 1701 |
grepl("01$", DPA_CANTON) |
(as.numeric(area_km2) > 5000 & as.numeric(area_km2) < 10000))
# Visualizar el mapa con ggplot2
ggplot() +
geom_sf(data = cantones_sf, fill = "gray90", color = "gray50", size = 0.2) + # Mapa de todos los cantones en gris claro
geom_sf(data = cantones_filtrados, aes(fill = DPA_CANTON), color = "black", size = 0.5) + # Cantones filtrados en colores específicos
geom_sf_text(data = cantones_filtrados, aes(label = DPA_CANTON), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de los cantones filtrados
labs(title = "Cantones Filtrados del Ecuador") +
theme_minimal()
# Filtrar para hacer la interseccion de las provincias de Pichincha, Cuenca y Guayas
provincias_filtradas <- provincias_sf %>%
filter(DPA_DESPRO %in% c("PICHINCHA", "AZUAY", "GUAYAS"))
# Visualizar el mapa con ggplot2
ggplot() +
geom_sf(data = provincias_sf, fill = "gray90", color = "gray50", size = 0.2) + # Mapa de todas las provincias en gris claro
geom_sf(data = provincias_filtradas, aes(fill = DPA_DESPRO), color = "black", size = 0.5) + # Provincias filtradas en colores específicos
geom_sf_text(data = provincias_filtradas, aes(label = DPA_DESPRO), size = 3, color = "black", check_overlap = TRUE) + # Etiquetas de las provincias filtradas
labs(title = "Provincias de Pichincha, Azuay (Cuenca) y Guayas") +
theme_minimal()