library(tidyverse)Df_eman <- rio::import("./datos/TASA DE EMANCIPACION.csv")Df_good <- Df_eman %>%mutate(Year =as.factor(Year)) %>%select(Year, Tasa)plot_eman <-ggplot(Df_good, aes(Year, Tasa)) +geom_line(group =1) +labs(title ="Tasa de emancipación para jóvenes de 18 -34 años.",x ="Año",y ="Tasa de emancipación",caption ="Fuente: datos.gob.es (Gobierno de España)." ) + ggthemes::theme_stata()plot_eman
Distribución de la tenencia de vivienda por países europeos
Código
datos_europa<-"./datos/datos_europa.csv"datos_europa<- rio::import(datos_europa)datos_europa<- datos_europa %>%select(tenure,geo,OBS_VALUE)categorias<-c("OWN_L"="Propietario,\n con hipoteca o préstamo", "OWN_NL"="Propietario,\n sin hipoteca ni préstamo de vivienda pendiente", "RENT_FR"="Inquilino,\n alquiler a precio reducido o gratis", "RENT_MKT"="Inquilino,\n alquiler a precio de mercado")p<-ggplot(datos_europa, aes(x = geo, y = OBS_VALUE, fill = tenure)) +geom_col( position ="stack", color ="white") +labs(title ="Distribución de la tenencia de vivienda por países europeos (2018)", x ="País", y ="%", caption ="Fuente:Eurostat") + ggthemes::theme_stata() +theme(plot.title =element_text(size =16, hjust =0.5, face ="bold"),legend.key.size =unit(0.2,"cm"),axis.text.x =element_text(angle =45, hjust =1),legend.title =element_text(face ="bold"),legend.position ="bottom",panel.grid.major.y =element_blank(),panel.grid.minor.y =element_blank()) +scale_fill_brewer(palette ="Set3") p +scale_fill_manual(values =c("OWN_L"="blue", "OWN_NL"="red", "RENT_FR"="yellow", "RENT_MKT"="green" ), labels = categorias) +guides(fill =guide_legend( keywidth =0.5, keyheight =0.5, title.theme =element_text(size =5), label.theme =element_text(size =5)))
datos4<-"./datos/datos4.csv"datos4<- rio::import(datos4)p4<-ggplot(datos4, aes(x =reorder(Parámetro, -Cuantia_media), y = Cuantia_media)) +geom_bar(stat ="identity", fill ="skyblue") +labs(title ="Precio del Alquiler por provincia (2018)",x ="Provincia",y ="Precio medio Alquiler",caption ="Ministerio de Fomento, Gobierno de España") +theme_minimal() +theme(axis.text.x =element_text(angle =45, hjust =1))p4
Índice de Precios de la Vivienda por CCAA
Código
#######MAPAlibrary(sf)library(tidyverse)library(pjpv.curso.R.2022)###cargamos los datos datos_c<-"./datos/prueba.csv"datos_c<- rio::import(datos_c)### En la columna Total queremos poner un punto en vez de una coma datos_c <- datos_c%>%mutate(Total = stringr::str_replace(Total, "," , "." ))#- Cambiamos el nombre de las columnas df_c<- datos_c %>%rename(Indice_precio = Total) %>%rename(CCAA = Comunidades_Autonomas)###Separamos la columna de CCAA en dos Columnas, una que muestre el código y otra el nombre de la Comunidad Autonoma df_c <- df_c %>% tidyr::separate(CCAA, sep =" ",into =c("ine_ccaa", "ine_ccaa.n"), extra ="merge")df_c<-drop_na(df_c) #quitamos el total nacional, ya que no se van a utilizardf_c<- df_c %>%filter(General =="General") %>%filter( Índices_tasas =="Media anual") %>%filter(Periodo =="2022") ##cogemos las viviendas generales, la media anual y elegimos el año más reciente que es 2022###Cargamos las geometrías y elegimos las variables que nos interesandf_geo_prov <- pjpv.curso.R.2022::LAU2_prov_2020_canariasdf_geo_prov <- df_geo_prov %>%select(ine_prov, ine_prov.n, ine_ccaa, ine_ccaa.n)##Agregamos geometrías de las Comunidades Autonomas df_geo_ccaa <- df_geo_prov %>%group_by(ine_ccaa, ine_ccaa.n) %>%summarize()df_ok <-left_join(df_geo_ccaa, df_c, by =c("ine_ccaa"="ine_ccaa"))names(df_ok)#> [1] "ine_ccaa" "ine_ccaa.n.x" "geometry" "ine_ccaa.n.y" #> [5] "General" "Índices_tasas" "Periodo" "Indice_precio"##Calculamos los Centroideslibrary(sf)df_geo_ccaa <-cbind(df_geo_ccaa, st_coordinates(st_centroid(df_geo_ccaa$geometry)))##Juntamos los datos de los precios de los alquileres con las geometrías df_ok <-left_join(df_geo_ccaa, df_c, by =c("ine_ccaa"="ine_ccaa"))df_ok$Indice_precio <-as.numeric(df_ok$Indice_precio)p <-ggplot() +geom_sf(data = df_ok, aes(geometry = geometry, fill = Indice_precio), color ="white", size =0.09) +coord_sf(xlim =c(-10.00, 5.00), ylim =c(35, NA), expand =TRUE) +scale_fill_continuous(low="white",high="navyblue",limits =c(100,160)) +theme_minimal() +theme(panel.grid.major =element_blank(), panel.grid.minor =element_blank()) +theme(axis.title.x=element_blank(),axis.text.x=element_blank(),axis.ticks.x=element_blank(),axis.title.y=element_blank(),axis.text.y=element_blank(),axis.ticks.y=element_blank()) +labs(title ="Índice de Precios de la Vivienda por Comunidades Autónomas", subtitle ="(2022)",fill ="Índice",caption ="Fuente: INE")p
Índice de Precios del Alquiler por CCAA
Código
##Otro Mapa pero ahora del Indice de Precios de Alquiler datos_alquiler<-"./datos/59057.csv"datos_alquiler<- rio::import(datos_alquiler)##Cambiamos la coma por el punto en la columna Totaldatos_alquiler<- datos_alquiler%>%mutate(Total = stringr::str_replace(Total, "," , "." ))##Separamos la columna de CCAA en dos Columnas, una que muestre el código y otra el nombre de la Comunidad Autonoma datos_alquiler <- datos_alquiler %>% tidyr::separate(CCAA, sep =" ",into =c("ine_ccaa", "ine_ccaa.n"), extra ="merge") ##Quitamos Total Nacional (que no lo necesitamos)datos_alquiler<-drop_na(datos_alquiler)##Cogemos las variables que nos interesan, filtramos por Indice y filtramos por el año 2021(es el más reciente)datos_alquiler<- datos_alquiler %>%filter(Tamaño =="Total") %>%filter(Dato =="Índice") %>%filter(Periodo ==2021) %>%select(ine_ccaa, ine_ccaa.n, Total)###Cargamos las geometrías y elegimos las variables que nos interesandf_geo_prov <- pjpv.curso.R.2022::LAU2_prov_2020_canariasdf_geo_prov <- df_geo_prov %>%select(ine_prov, ine_prov.n, ine_ccaa, ine_ccaa.n)##Agregamos geometrías de las Comunidades Autonomas df_geo_ccaa <- df_geo_prov %>%group_by(ine_ccaa, ine_ccaa.n) %>%summarize() df_ok <-left_join(df_geo_ccaa, datos_alquiler, by =c("ine_ccaa"="ine_ccaa"))names(df_ok)#> [1] "ine_ccaa" "ine_ccaa.n.x" "geometry" "ine_ccaa.n.y" "Total"##Calculamos los Centroideslibrary(sf)df_geo_ccaa <-cbind(df_geo_ccaa, st_coordinates(st_centroid(df_geo_ccaa$geometry)))##Juntamos los datos de los precios de los alquileres con las geometrías df_ok <-left_join(df_geo_ccaa, datos_alquiler, by =c("ine_ccaa"="ine_ccaa"))##Gráficodf_ok$Total <-as.numeric(df_ok$Total)p <-ggplot() +geom_sf(data = df_ok, aes(geometry = geometry, fill = Total), color ="white", size =0.09) +coord_sf(xlim =c(-10.00, 5.00), ylim =c(35, NA), expand =TRUE) +scale_fill_continuous(low="white",high="orange") +theme_minimal() +theme(panel.grid.major =element_blank(), panel.grid.minor =element_blank()) +theme(axis.title.x=element_blank(),axis.text.x=element_blank(),axis.ticks.x=element_blank(),axis.title.y=element_blank(),axis.text.y=element_blank(),axis.ticks.y=element_blank()) +labs(title ="Índice de Precios del Alquiler por Comunidades Autónomas", subtitle ="(2021)",fill ="Índice",caption ="Fuente: INE")p