Discriminación hacia las mujeres lesbianas en el mercado laboral en México.
En el siguiente trabajo, utilicé los datos de la Encuesta Nacional sobre Diversidad Sexual y de Género (ENDISEG) 2021, realizada por el Instituto Nacional de Estadística y Geografía (INEGI), con el fin de conocer aspectos relacionados con las características sexuales, identidad de género y orientación sexual de la población de 15 años y más. A partir de esta encuesta también se abordó la discriminación en los ámbitos laboral y privado, temas que analizaremos a continuación:
Variable | Pregunta | Respuesta |
---|---|---|
P9_1 | Usted se considera | 1- hombre, 2- mujer, 3-tanto hombre como mujer, 3-ni hombre, ni mujer, 5-de otro género |
P8_1A | Usted considera que su orientación es: | 1 lesbiana, 2 gay homosexual, 3 bisexual, 4 otra, por ejemplo: pansexual, asexual, b-blanco |
Variable | Pregunta | Respuesta |
---|---|---|
P11_4_1 | Durante los últimos 12 meses, de agosto de 2020 a la fecha, ¿en el trabajo recibió comentarios ofensivos o burlas? | 1-Si, 2-No, 3-No aplica, b-blanco |
P11_4_2 | Durante los últimos 12 meses, de agosto de 2020 a la fecha, ¿en el trabajo le excluyeron de eventos o actividades sociales? | 1-Si, 2-No, 3-No aplica, b-blanco |
P11_4_3 | Durante los últimos 12 meses, de agosto de 2020 a la fecha, ¿en el trabajo le molestaron o acosaron? | 1-Si, 2-No, 3-No aplica, b-blanco |
P11_4_4 | Durante los últimos 12 meses, de agosto de 2020 a la fecha, ¿en el trabajo recibió un trato desigual respecto a los beneficios, prestaciones laborales o ascensos? | 1-Si, 2-No, 3-No aplica, b-blanco |
P11_4_5 | Durante los últimos 12 meses, de agosto de 2020 a la fecha, ¿en el trabajo le pegaron, agredieron o amenazaron? | 1-Si, 2-No, 3-No aplica, b-blanco |
P11_5_7 | En los últimos cinco años, de agosto de 2016 a la fecha, ¿le han negado injustificadamente el empleo o la oportunidad de trabajar? | 1-Si, 2-No, 3-No aplica, b-blanco |
Variable | Pregunta | Respuesta |
---|---|---|
P11_6_11 | En los últimos 12 meses, de agosto de 2020 a la fecha, ¿ha sido discriminada(o), o menospreciada(o), por su preferencia sexual? | 1-Si, 2-no, 9-no especificado |
P11_8_1 | ¿Usted no toma de la mano a su pareja o le muestra su afecto en público por miedo a sufrir agresión o violencia? | 1-Si, 2-No se declaró como opción afirmativa |
P11_8_2 | ¿Usted no toma de la mano a su pareja o le muestra su afecto en público por ser mal visto socialmente? | 1-Si, 2-No se declaró como opción afirmativa |
P11_8_3 | ¿Usted no toma de la mano a su pareja o le muestra su afecto en público por pena o vergüenza? | 1-Si, 2-No se declaró como opción afirmativa |
P11_8_4 | ¿Usted no toma de la mano a su pareja o le muestra su afecto en público por temor a ser discriminada(o)? | 1-Si, 2-No se declaró como opción afirmativa |
P11_8_5 | ¿Usted no toma de la mano a su pareja o le muestra su afecto en público por falta de costumbre? | 1-Si, 2-No se declaró como opción afirmativa |
Aquí vemos la distribución de la identidad de género.
##
## 1 2 3 4 5
## 20005 23932 143 47 62
##
## 1 2 3 4
## 241 599 1107 223
ggplot(disc_lab) +
aes(x = P8_1A) +
geom_histogram(bins = 30L, fill = "#760492") +
labs(
x = "Orientación Sexual",
y = "Frecuencia",
title = "Orientación Sexual"
) +
theme_minimal()
## Warning: Removed 42019 rows containing non-finite outside the scale range
## (`stat_bin()`).
##
## 1 2 3 4
## 241 599 1107 223
ggplot(disc_lab) +
aes(x = P9_1) +
geom_histogram(bins = 30L, fill = "#4682B4") +
labs(
x = "Identidad de Género",
y = "Frecuencia",
title = "Identidad de Género"
) +
theme_minimal()
##
## 1 2 3 4 5
## 20005 23932 143 47 62
y de la orientación sexual
##
## 1 2 3 4
## 241 599 1107 223
Para considerar más identidades de género y orientación sexual que no sean heterosexuales, la filtración incluye a personas que se consideran mujeres y lesbianas, gays/homosexuales, bisexuales, u otras identidades como pansexuales o asexuales. La filtración es para eliminar a todas las personas que se consideran cis-hombres y heterosexuales.
Depende del grupo, pero en el caso del lesbianismo se entiende que la mayoría son personas que se consideran mujeres, aunque la identificación puede variar entre lesbiana, gay/homosexual, bisexual o pansexual/asexual, es decir, cualquier orientación que no sea heterosexual.
quer_les <- dplyr::filter(
disc_lab,
P9_1 %in% c(2, 3, 4, 5), # Prüft, ob P9_1 in den Werten 2, 3, 4, 5 enthalten ist
P8_1A %in% c(1, 2, 3, 4), # Prüft, ob P8_1A in den Werten 1, 2, 3, 4 enthalten ist
P11_5_7 != 9, # Prüft, ob P11_5_7 nicht gleich 9 ist
P11_6_11 != 9, # Prüft, ob P11_6_11 nicht gleich 9 ist
P11_8_1 != 9 # Prüft, ob P11_8_1 nicht gleich 9 ist
)
table(quer_les$P8_1A)
##
## 1 2 3 4
## 49 19 93 18
ggplot(quer_les) +
aes(x = P8_1A) +
geom_histogram(bins = 30L, fill = "#75098F") +
labs(
x = "Orientación sexual (no hombres cis)",
y = "Frecuencia",
title = "Orientación sexual (no hombres cis)"
) +
theme_minimal()
##
## 1 2 3 4
## 49 19 93 18
variables <- c("dicriminacion_lab1", "dicriminacion_lab2", "dicriminacion_lab3",
"dicriminacion_lab4", "dicriminacion_lab5", "dicriminacion_lab6")
# Berechne die Häufigkeit der '1'-Werte (sí) für jede Variable
freq_si <- sapply(variables, function(var) sum(quer_les[[var]] == 1, na.rm = TRUE))
# Erstelle ein Balkendiagramm
barplot(freq_si,
names.arg = variables, # Namen der Variablen auf der X-Achse
col = "lightblue", # Farbe für die Balken
main = "Confirmación de la experiencia de discriminación laboral de lesbianas",
xlab = "Variable",
ylab = "Respuestas 'Sí' (1)",
ylim = c(0, max(freq_si) + 10)) # Y-Achse dynamisch basierend auf den Häufigkeiten
# Variablen und die entsprechenden Fragen
variables <- c("dicriminacion_lab1", "dicriminacion_lab2", "dicriminacion_lab3",
"dicriminacion_lab4", "dicriminacion_lab5", "dicriminacion_lab6")
questions <- c(
"¿en el trabajo recibió comentarios ofensivos o burlas?",
"¿en el trabajo le excluyeron de eventos o actividades sociales?",
"¿en el trabajo le molestaron o acosaron?",
"¿en el trabajo recibió un trato desigual respecto a los beneficios, prestaciones laborales o ascensos?",
"¿en el trabajo le pegaron, agredieron o amenazaron?",
"¿le han negado injustificadamente el empleo o la oportunidad de trabajar?"
)
# Berechne die Häufigkeit der '1'-Werte (sí) und der '0'-Werte (no) für jede Variable
freq_si <- sapply(variables, function(var) sum(quer_les[[var]] == 1, na.rm = TRUE))
freq_no <- sapply(variables, function(var) sum(quer_les[[var]] == 0, na.rm = TRUE))
# Berechne die Gesamtzahl und die Prozente
total_responses <- freq_si + freq_no
percent_si <- round((freq_si / total_responses) * 100, 1)
percent_no <- round((freq_no / total_responses) * 100, 1)
# Kombiniere die Prozente in einer Matrix
percent_matrix <- rbind(percent_si, percent_no)
# Erstelle Tortendiagramme für jede Variable
par(mfrow = c(2, 3), mar = c(5, 5, 2, 2)) # Setze Ränder für bessere Sichtbarkeit
for (i in 1:length(variables)) {
# Erstelle das Tortendiagramm
pie(
percent_matrix[, i],
labels = paste(c("Sí", "No"), ": ", percent_matrix[, i], "%"),
col = c("lightblue", "salmon"),
main = strwrap(questions[i], width = 40), # Umbrüche einfügen
cex.main = 0.8 # Verkleinerung der Schriftgröße des Titels
)
}
# Variablen und die entsprechenden Fragen
variables <- c("dicriminacion_lab1", "dicriminacion_lab2", "dicriminacion_lab3",
"dicriminacion_lab4", "dicriminacion_lab5", "dicriminacion_lab6")
questions <- c(
"¿en el trabajo recibió comentarios ofensivos o burlas?",
"¿en el trabajo le excluyeron de eventos o actividades sociales?",
"¿en el trabajo le molestaron o acosaron?",
"¿en el trabajo recibió un trato desigual respecto a los beneficios, prestaciones laborales o ascensos?",
"¿en el trabajo le pegaron, agredieron o amenazaron?",
"¿le han negado injustificadamente el empleo o la oportunidad de trabajar?"
)
# Berechne die Häufigkeit der '1'-Werte (sí) und der '0'-Werte (no) für jede Variable
freq_si <- sapply(variables, function(var) sum(quer_les[[var]] == 1, na.rm = TRUE))
freq_no <- sapply(variables, function(var) sum(quer_les[[var]] == 0, na.rm = TRUE))
# Kombiniere die Häufigkeiten in einer Matrix
freq_matrix <- rbind(freq_si, freq_no)
# Erstelle Tortendiagramme für jede Variable
par(mfrow = c(2, 3), mar = c(5, 5, 2, 2)) # Setze Ränder für bessere Sichtbarkeit
for (i in 1:length(variables)) {
# Erstelle das Tortendiagramm
pie(freq_matrix[, i],
labels = paste(c("Sí", "No"), ": ", freq_matrix[, i]),
col = c("lightblue", "salmon"),
main = strwrap(questions[i], width = 40), # Umbrüche einfügen
cex.main = 0.8) # Verkleinerung der Schriftgröße des Titels
}
# Variable und entsprechende Fragen
variables <- c("dicriminacion_lab1", "dicriminacion_lab2", "dicriminacion_lab3",
"dicriminacion_lab4", "dicriminacion_lab5", "dicriminacion_lab6")
questions <- c(
"¿en el trabajo recibió comentarios ofensivos o burlas?",
"¿en el trabajo le excluyeron de eventos o actividades sociales?",
"¿en el trabajo le molestaron o acosaron?",
"¿en el trabajo recibió un trato desigual respecto a los beneficios, prestaciones laborales o ascensos?",
"¿en el trabajo le pegaron, agredieron o amenazaron?",
"¿le han negado injustificadamente el empleo o la oportunidad de trabajar?"
)
# Berechne die Häufigkeit der '1'-Werte (sí) und der '0'-Werte (no) für jede Variable
freq_si <- sapply(variables, function(var) sum(quer_les[[var]] == 1, na.rm = TRUE))
freq_no <- sapply(variables, function(var) sum(quer_les[[var]] == 0, na.rm = TRUE))
# Berechne die Gesamtanzahl der Beobachtungen für jede Variable
total <- freq_si + freq_no
# Berechne die prozentuale Häufigkeit
percent_si <- (freq_si / total) * 100
percent_no <- (freq_no / total) * 100
# Kombiniere die Prozentangaben in einer Matrix
percent_matrix <- rbind(percent_si, percent_no)
# Erstelle Tortendiagramme für jede Variable
par(mfrow = c(2, 3), mar = c(5, 5, 2, 2)) # Setze Ränder für bessere Sichtbarkeit
for (i in 1:length(variables)) {
# Erstelle das Tortendiagramm
pie(percent_matrix[, i],
labels = paste(c("Sí", "No"), ": ", round(percent_matrix[, i], 1), "%"),
col = c("lightblue", "salmon"),
main = strwrap(questions[i], width = 40), # Umbrüche aAdding interpretable line breaks Haupttitel
cex.main = 0.8) # Verkleinerung der Schriftgröße des Titels
}
##
## 0 1
## 89 20
variables <- c("dicriminacion_lab1", "dicriminacion_lab2", "dicriminacion_lab3",
"dicriminacion_lab4", "dicriminacion_lab5", "dicriminacion_lab6")
freq_si <- sapply(variables, function(var) sum(quer_les[[var]] == 1, na.rm = TRUE))
freq_no <- sapply(variables, function(var) sum(quer_les[[var]] == 0, na.rm = TRUE))
freq_matrix <- rbind(freq_no, freq_si)
barplot(freq_matrix,
beside = TRUE,
col = c("salmon", "lightblue"),
names.arg = variables,
main = "Comparación de los porcentajes de 'Sí' (1) y 'No' (0)",
xlab = "Variable",
ylab = "Frecuencia",
legend.text = c("No", "Sí"),
ylim = c(0, max(freq_matrix) + 50))
Aunque la investigación se centra en la discriminación hacia las mujeres lesbianas, también se considera importante mostrar cómo es el mundo, donde existe discriminación contra las mujeres no heterosexuales en general.
# Variablen, die du vergleichen möchtest
variables <- c("dicriminacion1", "dicriminacion2", "dicriminacion3",
"dicriminacion4", "dicriminacion5", "dicriminacion6")
# Berechne die Häufigkeit der '1'-Werte (Sí) und '0'-Werte (No) für jede Variable
freq_si <- sapply(variables, function(var) sum(quer_les[[var]] == 1, na.rm = TRUE))
freq_no <- sapply(variables, function(var) sum(quer_les[[var]] == 0, na.rm = TRUE))
# Berechne die Verhältnisse (prozentuale Anteile) für Sí und No
total_responses <- freq_si + freq_no
ratio_si <- freq_si / total_responses
ratio_no <- freq_no / total_responses
# Erstelle eine Matrix mit den Verhältnissen
ratio_matrix <- rbind(ratio_no, ratio_si)
# Erstelle das Balkendiagramm der Verhältnisse
barplot(ratio_matrix,
beside = TRUE, # Nebeneinander darstellen
col = c("salmon", "lightblue"), # Farben für No und Sí
names.arg = variables, # Variablennamen auf der x-Achse
main = "Comparación de los porcentajes de 'Sí' (1) y 'No' (0)", # Titel
xlab = "Variable",
ylab = "Relación",
legend.text = c("No", "Sí"), # Legende
ylim = c(0, 1)) # Y-Achse für Verhältnisse zwischen 0 und 1
# Variablen, die du vergleichen möchtest
variables <- c("dicriminacion1", "dicriminacion2", "dicriminacion3",
"dicriminacion4", "dicriminacion5", "dicriminacion6")
# Berechne die Häufigkeit der '1'-Werte (Sí) für jede Variable
freq_si <- sapply(variables, function(var) sum(quer_les[[var]] == 1, na.rm = TRUE))
# Erstelle das Balkendiagramm nur für die Sí-Antworten
barplot(freq_si,
col = "lightblue", # Farbe für Sí-Antworten
names.arg = variables, # Variablennamen auf der x-Achse
main = "Confirmación de la experiencia de discriminación laboral de lesbianas", # Titel
xlab = "Variable",
ylab = "Respuestas Si (1)",
ylim = c(0, max(freq_si) + 50)) # Y-Achse dynamisch basierend auf den Häufigkeiten
# Variablen und die zugehörigen Fragen
questions <- c(
"¿ha sido discriminada(o), o menospreciada(o), por su preferencia sexual?",
"¿Usted no toma de la mano a su pareja o le muestra su afecto en público por miedo a sufrir agresión o violencia?",
"¿Usted no toma de la mano a su pareja o le muestra su afecto en público por ser mal visto socialmente?",
"¿Usted no toma de la mano a su pareja o le muestra su afecto en público por pena o vergüenza?",
"¿Usted no toma de la mano a su pareja o le muestra su afecto en público por temor a ser discriminada(o)?",
"¿Usted no toma de la mano a su pareja o le muestra su afecto en público por falta de costumbre?"
)
# Variablen, die du vergleichen möchtest
variables <- c("dicriminacion1", "dicriminacion2", "dicriminacion3",
"dicriminacion4", "dicriminacion5", "dicriminacion6")
# Erstelle eine Funktion, um für jede Variable ein Tortendiagramm zu erstellen
par(mfrow = c(2, 3)) # Zwei Reihen und drei Spalten für die Diagramme
for (i in 1:length(variables)) {
var <- variables[i]
question <- questions[i]
# Breche die Frage in mehrere Zeilen
wrapped_question <- strwrap(question, width = 40) # 40 Zeichen pro Zeile
# Berechne die Häufigkeit der '1' (Sí) und '0' (No) für jede Variable
freq <- table(quer_les[[var]])
# Erstelle das Tortendiagramm für jede Variable
pie(freq,
main = paste(wrapped_question, collapse = "\n"), # Frage in mehreren Zeilen als Titel
col = c("lightblue", "salmon"), # Farben für Sí (1) und No (0)
labels = paste(c("No", "Sí"), "\n", round(100 * freq / sum(freq), 1), "%"), # Prozentsätze anzeigen
cex.main = 0.8) # Verkleinere die Schriftgröße des Titels (Fragen)
}
## Warning: Paket 'sf' wurde unter R Version 4.4.2 erstellt
## Linking to GEOS 3.12.2, GDAL 3.9.3, PROJ 9.4.1; sf_use_s2() is TRUE
library(ggplot2)
library(dplyr)
# Shapefile lesen
mexmex <- st_read("C:/Master/3. Semester/R/Dataset/gadm41_MEX.gpkg", layer = "ADM_ADM_1")
## Reading layer `ADM_ADM_1' from data source
## `C:\Master\3. Semester\R\Dataset\gadm41_MEX.gpkg' using driver `GPKG'
## Simple feature collection with 32 features and 11 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -118.3665 ymin: 14.53507 xmax: -86.71074 ymax: 32.71863
## Geodetic CRS: WGS 84
# Daten zur Einführung der Ehe für alle
matrimonio_data <- data.frame(
estado = c("Ciudad de Mexico", "Quintana Roo", "Coahuila", "Chihuahua", "Nayarit",
"Campeche", "Michoacán", "Morelos", "Colima", "Chiapas", "Nuevo León",
"San Luis Potosí", "Hidalgo", "Baja California Sur", "Oaxaca", "Puebla",
"Tlaxcala", "Sinaloa", "Baja California", "Yucatán", "Querétaro", "Sonora",
"Zacatecas", "Guanajuato", "Jalisco", "Veracruz", "Durango", "Estado de México",
"Tabasco", "Guerrero", "Tamaulipas"),
jahr = c(2010, 2012, 2014, 2015, 2015, 2016, 2016, 2016, 2016, 2017, 2019, 2019, 2019,
2019, 2019, 2020, 2020, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2022, 2022,
2022, 2022, 2022, 2022, 2022)
)
# Daten mit Shapefile verbinden
mexmex <- mexmex %>%
left_join(matrimonio_data, by = c("NAME_1" = "estado"))
# Karte erstellen
ggplot(data = mexmex) +
geom_sf(aes(fill = jahr)) +
scale_fill_viridis_c(option = "plasma", na.value = "grey50", name = "Ehe für alle") +
labs(
title = "Einführung der Ehe für alle in Mexiko",
subtitle = "Jahr der Einführung in den Bundesstaaten",
caption = "Datenquelle: INEGI"
) +
theme_minimal()
# Erstelle eine Datenstruktur für die verschiedenen Jahre und dazugehörigen Staaten
matrimonio_igualitario <- data.frame(
Jahr = c(2010, 2012, 2014, 2015, 2016, 2017, 2019, 2020, 2021, 2022),
Estados = c(
"Ciudad de México",
"Quintana Roo",
"Coahuila",
"Chihuahua, Nayarit",
"Campeche, Michoacán, Morelos, Colima",
"Chiapas",
"Nuevo León, San Luis Potosí, Hidalgo, Baja California Sur, Aguascalientes, Oaxaca",
"Puebla, Tlaxcala",
"Sinaloa, Baja California, Yucatán, Querétaro, Sonora, Zacatecas, Guanajuato",
"Jalisco, Veracruz, Durango, Estado de México, Tabasco, Guerrero, Tamaulipas"
)
)
# Tabelle anzeigen
print(matrimonio_igualitario)
## Jahr
## 1 2010
## 2 2012
## 3 2014
## 4 2015
## 5 2016
## 6 2017
## 7 2019
## 8 2020
## 9 2021
## 10 2022
## Estados
## 1 Ciudad de México
## 2 Quintana Roo
## 3 Coahuila
## 4 Chihuahua, Nayarit
## 5 Campeche, Michoacán, Morelos, Colima
## 6 Chiapas
## 7 Nuevo León, San Luis Potosí, Hidalgo, Baja California Sur, Aguascalientes, Oaxaca
## 8 Puebla, Tlaxcala
## 9 Sinaloa, Baja California, Yucatán, Querétaro, Sonora, Zacatecas, Guanajuato
## 10 Jalisco, Veracruz, Durango, Estado de México, Tabasco, Guerrero, Tamaulipas
# Benötigte Bibliotheken laden
library(sf)
library(ggplot2)
library(dplyr)
# Shapefile lesen
mexmex <- st_read("C:/Master/3. Semester/R/Dataset/gadm41_MEX.gpkg", layer = "ADM_ADM_1")
## Reading layer `ADM_ADM_1' from data source
## `C:\Master\3. Semester\R\Dataset\gadm41_MEX.gpkg' using driver `GPKG'
## Simple feature collection with 32 features and 11 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -118.3665 ymin: 14.53507 xmax: -86.71074 ymax: 32.71863
## Geodetic CRS: WGS 84
# Daten zur Einführung der Ehe für alle
matrimonio_data <- data.frame(
estado = c("Ciudad de Mexico", "Quintana Roo", "Coahuila", "Chihuahua", "Nayarit",
"Campeche", "Michoacán", "Morelos", "Colima", "Chiapas", "Nuevo León",
"San Luis Potosí", "Hidalgo", "Baja California Sur", "Oaxaca", "Puebla",
"Tlaxcala", "Sinaloa", "Baja California", "Yucatán", "Querétaro", "Sonora",
"Zacatecas", "Guanajuato", "Jalisco", "Veracruz", "Durango", "Estado de México",
"Tabasco", "Guerrero", "Tamaulipas"),
jahr = c(2010, 2012, 2014, 2015, 2015, 2016, 2016, 2016, 2016, 2017, 2019, 2019, 2019,
2019, 2019, 2020, 2020, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2022, 2022,
2022, 2022, 2022, 2022, 2022)
)
# Daten mit Shapefile verbinden
mexmex <- mexmex %>%
left_join(matrimonio_data, by = c("NAME_1" = "estado"))
# Farben definieren
farben <- c("2010" = "#f7fbff", "2012" = "#deebf7", "2014" = "#c6dbef", "2015" = "#9ecae1",
"2016" = "#6baed6", "2017" = "#4292c6", "2019" = "#2171b5", "2020" = "#08519c",
"2021" = "#08306b", "2022" = "#08306b")
# Karte erstellen
ggplot(data = mexmex) +
geom_sf(aes(fill = as.factor(jahr)), color = "black") +
scale_fill_manual(values = farben, na.value = "grey50", name = "Ehe für alle") +
labs(
title = "Einführung der Ehe für alle in Mexiko",
subtitle = "Jahr der Einführung in den Bundesstaaten",
caption = "Datenquelle: INEGI",
fill = "Jahr"
) +
theme_minimal() +
theme(legend.position = "bottom",
plot.title = element_text(hjust = 0.5, size = 16, face = "bold"),
plot.subtitle = element_text(hjust = 0.5, size = 12))
# Benötigte Bibliotheken laden
library(sf)
library(ggplot2)
library(dplyr)
# Shapefile lesen
mexmex <- st_read("C:/Master/3. Semester/R/Dataset/gadm41_MEX.gpkg", layer = "ADM_ADM_1")
## Reading layer `ADM_ADM_1' from data source
## `C:\Master\3. Semester\R\Dataset\gadm41_MEX.gpkg' using driver `GPKG'
## Simple feature collection with 32 features and 11 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -118.3665 ymin: 14.53507 xmax: -86.71074 ymax: 32.71863
## Geodetic CRS: WGS 84
# Daten zur Einführung der Ehe für alle
matrimonio_data <- data.frame(
estado = c("Ciudad de Mexico", "Quintana Roo", "Coahuila", "Chihuahua", "Nayarit",
"Campeche", "Michoacán", "Morelos", "Colima", "Chiapas", "Nuevo León",
"San Luis Potosí", "Hidalgo", "Baja California Sur", "Oaxaca", "Aguascalientes",
"Puebla", "Tlaxcala", "Sinaloa", "Baja California", "Yucatán", "Querétaro",
"Sonora", "Zacatecas", "Guanajuato", "Jalisco", "Veracruz", "Durango",
"Estado de México", "Tabasco", "Guerrero", "Tamaulipas"),
jahr = c(2010, 2012, 2014, 2015, 2015, 2016, 2016, 2016, 2016, 2017, 2019, 2019, 2019,
2019, 2019, 2019, 2020, 2020, 2021, 2021, 2021, 2021, 2021, 2021, 2021, 2022,
2022, 2022, 2022, 2022, 2022, 2022)
)
# Daten mit Shapefile verbinden
mexmex <- mexmex %>%
left_join(matrimonio_data, by = c("NAME_1" = "estado"))
# Farben definieren
farben <- c("2010" = "#FFD700", "2012" = "#FFA500", "2014" = "#800080", "2015" = "#FF0000",
"2016" = "#FF69B4", "2017" = "#0000FF", "2019" = "#008000", "2020" = "#FFFF00",
"2021" = "#FF6347", "2022" = "#6A5ACD")
# Karte erstellen
ggplot(data = mexmex) +
geom_sf(aes(fill = as.factor(jahr)), color = "black") +
scale_fill_manual(values = farben, na.value = "grey50", name = "Ehe für alle") +
labs(
title = "Einführung der Ehe für alle in Mexiko",
subtitle = "Jahr der Einführung in den Bundesstaaten",
caption = "Datenquelle: INEGI",
fill = "Jahr"
) +
theme_minimal() +
theme(legend.position = "bottom",
plot.title = element_text(hjust = 0.5, size = 16, face = "bold"),
plot.subtitle = element_text(hjust = 0.5, size = 12))
## Warning: Paket 'viridisLite' wurde unter R Version 4.4.2 erstellt
# install.packages("dplyr")
library(dplyr)
# Daten zur Einführung der Ehe für alle
correlation_data_ecofis <- data.frame(
state_abbreviation = c("AGS", "BC", "BCS", "CAM", "CHIS", "CHIH", "COAH",
"COL", "DGO", "GTO", "GRO", "HGO", "JAL", "MEX",
"CDMX", "MICH", "MOR", "NAY", "NL", "OAX", "PUE",
"QRO", "QR", "SLP", "SIN", "SON", "TAB", "TAMPS",
"TLAX", "VER", "YUC", "ZAC"),
correlation_ecofis_value = c(2019, 2021, 2019, 2016, 2017, 2015, 2014, 2016, 2022, 2021, 2022, 2019, 2022, 2022, 2010, 2016, 2016, 2015, 2019, 2019, 2020, 2021, 2012, 2019, 2021, 2021, 2022, 2022, 2020, 2022, 2021, 2021)
)
# Bundesstaaten-Namen anpassen
correlation_data_ecofis <- correlation_data_ecofis %>%
dplyr::mutate(NAME_1 = dplyr::case_when(
state_abbreviation == "AGS" ~ "Aguascalientes",
state_abbreviation == "BC" ~ "Baja California",
state_abbreviation == "BCS" ~ "Baja California Sur",
state_abbreviation == "CAM" ~ "Campeche",
state_abbreviation == "CHIS" ~ "Chiapas",
state_abbreviation == "CHIH" ~ "Chihuahua",
state_abbreviation == "COAH" ~ "Coahuila",
state_abbreviation == "COL" ~ "Colima",
state_abbreviation == "DGO" ~ "Durango",
state_abbreviation == "GTO" ~ "Guanajuato",
state_abbreviation == "GRO" ~ "Guerrero",
state_abbreviation == "HGO" ~ "Hidalgo",
state_abbreviation == "JAL" ~ "Jalisco",
state_abbreviation == "MEX" ~ "Estado de México",
state_abbreviation == "CDMX" ~ "Ciudad de Mexico",
state_abbreviation == "MICH" ~ "Michoacán",
state_abbreviation == "MOR" ~ "Morelos",
state_abbreviation == "NAY" ~ "Nayarit",
state_abbreviation == "NL" ~ "Nuevo León",
state_abbreviation == "OAX" ~ "Oaxaca",
state_abbreviation == "PUE" ~ "Puebla",
state_abbreviation == "QRO" ~ "Querétaro",
state_abbreviation == "QR" ~ "Quintana Roo",
state_abbreviation == "SLP" ~ "San Luis Potosí",
state_abbreviation == "SIN" ~ "Sinaloa",
state_abbreviation == "SON" ~ "Sonora",
state_abbreviation == "TAB" ~ "Tabasco",
state_abbreviation == "TAMPS" ~ "Tamaulipas",
state_abbreviation == "TLAX" ~ "Tlaxcala",
state_abbreviation == "VER" ~ "Veracruz",
state_abbreviation == "YUC" ~ "Yucatán",
state_abbreviation == "ZAC" ~ "Zacatecas"
))
# Benötigte Bibliotheken laden
library(dplyr)
library(sf)
library(ggplot2)
library(viridis) # viridis Bibliothek laden
## Warning: Paket 'viridis' wurde unter R Version 4.4.2 erstellt
# Geodaten laden
mexmex <- st_read("C:/Master/3. Semester/R/Dataset/gadm41_MEX.gpkg", layer = "ADM_ADM_1")
## Reading layer `ADM_ADM_1' from data source
## `C:\Master\3. Semester\R\Dataset\gadm41_MEX.gpkg' using driver `GPKG'
## Simple feature collection with 32 features and 11 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -118.3665 ymin: 14.53507 xmax: -86.71074 ymax: 32.71863
## Geodetic CRS: WGS 84
# Geodaten mit Korrelationen verbinden
mexmex <- mexmex %>%
left_join(correlation_data_ecofis, by = c("NAME_1" = "NAME_1"))
# Überprüfen, ob die Zusammenführung erfolgreich war
missing_values <- mexmex %>% filter(is.na(correlation_ecofis_value))
print(paste("Bundesstaaten ohne Korrelation:", missing_values$NAME_1))
## [1] "Bundesstaaten ohne Korrelation: Distrito Federal"
## [2] "Bundesstaaten ohne Korrelation: México"
# Karte erstellen
ggplot(mexmex) +
geom_sf(aes(fill = correlation_ecofis_value)) +
scale_fill_viridis_c(option = "plasma") + # Farbschema ändern
labs(
title = "Matrimonio igualitario en México",
subtitle = "Año de introducción por estado",
caption = "Fuente: Cálculos propios basados en datos de la encuesta del INEGI",
fill = "Año"
) +
theme_minimal() +
theme(
plot.title = element_text(hjust = 0.5, size = 15), # Titel zentrieren und Größe anpassen
plot.subtitle = element_text(hjust = 0.5, size = 10), # Untertitel zentrieren und Größe anpassen
plot.caption = element_text(hjust = 0.5, size = 8) # Quellenangabe zentrieren und Größe anpassen
)
# Tabelle der Korrelationen erstellen
#install.packages("viridisLite")
library(viridisLite)
#install.packages("dplyr")
library(dplyr)
# Daten zur Einführung der Ehe für alle
correlation_data_ecofis <- data.frame(
state_abbreviation = c("AGS", "BC", "BCS", "CAM", "CHIS", "CHIH", "COAH",
"COL", "DGO", "GTO", "GRO", "HGO", "JAL", "MEX",
"CDMX", "MICH", "MOR", "NAY", "NL", "OAX", "PUE",
"QRO", "QR", "SLP", "SIN", "SON", "TAB", "TAMPS",
"TLAX", "VER", "YUC", "ZAC"),
correlation_ecofis_value = c(2019, 2021, 2019, 2016, 2017, 2015, 2014, 2016, 2022, 2021, 2022, 2019, 2022, 2022, 2010, 2016, 2016, 2015, 2019, 2019, 2020, 2021, 2012, 2019, 2021, 2021, 2022, 2022, 2020, 2022, 2021, 2021)
)
# Bundesstaaten-Namen anpassen
correlation_data_ecofis <- correlation_data_ecofis %>%
dplyr::mutate(NAME_1 = dplyr::case_when(
state_abbreviation == "AGS" ~ "Aguascalientes",
state_abbreviation == "BC" ~ "Baja California",
state_abbreviation == "BCS" ~ "Baja California Sur",
state_abbreviation == "CAM" ~ "Campeche",
state_abbreviation == "CHIS" ~ "Chiapas",
state_abbreviation == "CHIH" ~ "Chihuahua",
state_abbreviation == "COAH" ~ "Coahuila",
state_abbreviation == "COL" ~ "Colima",
state_abbreviation == "DGO" ~ "Durango",
state_abbreviation == "GTO" ~ "Guanajuato",
state_abbreviation == "GRO" ~ "Guerrero",
state_abbreviation == "HGO" ~ "Hidalgo",
state_abbreviation == "JAL" ~ "Jalisco",
state_abbreviation == "MEX" ~ "Estado de México",
state_abbreviation == "CDMX" ~ "Ciudad de Mexico",
state_abbreviation == "MICH" ~ "Michoacán",
state_abbreviation == "MOR" ~ "Morelos",
state_abbreviation == "NAY" ~ "Nayarit",
state_abbreviation == "NL" ~ "Nuevo León",
state_abbreviation == "OAX" ~ "Oaxaca",
state_abbreviation == "PUE" ~ "Puebla",
state_abbreviation == "QRO" ~ "Querétaro",
state_abbreviation == "QR" ~ "Quintana Roo",
state_abbreviation == "SLP" ~ "San Luis Potosí",
state_abbreviation == "SIN" ~ "Sinaloa",
state_abbreviation == "SON" ~ "Sonora",
state_abbreviation == "TAB" ~ "Tabasco",
state_abbreviation == "TAMPS" ~ "Tamaulipas",
state_abbreviation == "TLAX" ~ "Tlaxcala",
state_abbreviation == "VER" ~ "Veracruz",
state_abbreviation == "YUC" ~ "Yucatán",
state_abbreviation == "ZAC" ~ "Zacatecas"
))
# Benötigte Bibliotheken laden
library(dplyr)
library(sf)
library(ggplot2)
library(viridis) # viridis Bibliothek laden
# Geodaten laden
mexmex <- st_read("C:/Master/3. Semester/R/Dataset/gadm41_MEX.gpkg", layer = "ADM_ADM_1")
## Reading layer `ADM_ADM_1' from data source
## `C:\Master\3. Semester\R\Dataset\gadm41_MEX.gpkg' using driver `GPKG'
## Simple feature collection with 32 features and 11 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -118.3665 ymin: 14.53507 xmax: -86.71074 ymax: 32.71863
## Geodetic CRS: WGS 84
# Geodaten mit Korrelationen verbinden
mexmex <- mexmex %>%
left_join(correlation_data_ecofis, by = c("NAME_1" = "NAME_1"))
# Überprüfen, ob die Zusammenführung erfolgreich war
missing_values <- mexmex %>% filter(is.na(correlation_ecofis_value))
print(paste("Bundesstaaten ohne Korrelation:", missing_values$NAME_1))
## [1] "Bundesstaaten ohne Korrelation: Distrito Federal"
## [2] "Bundesstaaten ohne Korrelation: México"
# Farben definieren
farben <- c("2012" = "#FFA500", "2010" = "#FF69B4","2014" = "#800080", "2015" = "#FF0000",
"2016" = "#FFD700", "2017" = "#0000FF", "2019" = "#008000", "2020" = "#FFFF00",
"2021" = "#FF6347", "2022" = "#C71585")
# Karte erstellen
ggplot(mexmex) +
geom_sf(aes(fill = as.factor(correlation_ecofis_value)), color = "black") +
scale_fill_manual(values = farben, name = "Año") +
labs(
title = "Matrimonio igualitario en México",
subtitle = "Año de introducción por estado",
caption = "Fuente: Cálculos propios basados en datos de la encuesta del INEGI",
fill = "Año"
) +
theme_minimal() +
theme(
legend.position = "bottom",
plot.title = element_text(hjust = 0.5, size = 15), # Titel zentrieren und Größe anpassen
plot.subtitle = element_text(hjust = 0.5, size = 10), # Untertitel zentrieren und Größe anpassen
plot.caption = element_text(hjust = 0.5, size = 8) # Quellenangabe zentrieren und Größe anpassen
)