(Acest articol a fost publicat pentru prima dată pe r.iresmi.netși cu amabilitate a contribuit la R-bloggeri). (Puteți raporta problema legată de conținutul acestei pagini aici)
Doriți să vă distribuiți conținutul pe R-bloggeri? dați clic aici dacă aveți un blog, sau aici dacă nu aveți.
Ziua 24 din 30DayMapChallenge: „Numai forme circulare” (anterior).
Vom cartografia pesticidele cumpărate în Franța sub formă de cartogramă Dorling (Dorling 1996).
library(readr) library(dplyr) library(tidyr) library(stringr) library(ggplot2) library(glue) library(janitor) library(sf) library(fs) library(cartogram) library(ggrepel)
Obțineți datele din Declarațiile de vânzare de produse de protecție a plantelor.
Selecta:
- Achats
- 2022
- Cod postal de l’acheteur
- Substanţă
- Franța entière
și așteptați să primiți linkul de descărcare prin e-mail.
# get french départements from # https://static.data.gouv.fr/resources/admin-express-cog-simplifiee-2024-metropole-drom-saint-martin-saint-barthelemy/20240930-094021/adminexpress-cog-simpl-000-2024.gpkg dep <- read_sf("~/data/adminexpress/adminexpress-cog-simpl-000-2024.gpkg", layer = "departement") |> filter(insee_reg > "06") |> st_transform("EPSG:2154") unzip("BNVD_TRACABILITE_20241124_102856_ACHAT_.zip", exdir = "bnvd") bnvd <- dir_ls("bnvd", regexp = "ACHAT_CP_SUBSTANCE_(?!INDETERMINEE).*\.csv$", perl = TRUE) |> read_delim(delim = ";", na = c("-", "nc", ""), col_types = cols(code_sandre_substance = col_character())) |> filter(code_postal_acheteur < "97000") dir_delete("bnvd")
Pachetul {cartogram} este folosit pentru a genera cercurile.
# Adding pesticides info to the polygons bnvd_dep <- dep |> left_join(bnvd |> group_by(code_departement_acheteur) |> summarise(substance_kg = sum(quantite_substance, na.rm = TRUE)), join_by(insee_dep == code_departement_acheteur)) |> mutate(w = 1 - (substance_kg / max(substance_kg))) bnvd_dorling_dep <- bnvd_dep |> cartogram_dorling(weight = "substance_kg", m_weight = bnvd_dep$w)
bnvd_dorling_dep |> ggplot() + geom_sf(fill = "palevioletred2", color = "maroon4", linewidth = 1) + geom_text_repel(aes(label = insee_dep, geometry = geom), stat = "sf_coordinates", force = 0.001, size = 3, color = "red4", bg.r = 0.1, bg.color = "pink") + labs(title = "Pesticides bought in France", subtitle = "départements - 2022", caption = glue("https://r.iresmi.net/ - {Sys.Date()} data: Substance weight - BNV-D (OFB)")) + theme_void() + theme(plot.caption = element_text(size = 6, color = "darkgrey"), text = element_text(color = "#ddd"), panel.background = element_blank(), plot.background = element_rect(fill = "grey10", color = NA), plot.margin = unit(c(5, 5, 5, 5), "mm"))
În această figură, cartografiam mai mult decât pesticidele cumpărate: zona și tipul de agricultură din departament sunt principalii factori care determina dimensiunea cercurilor. Viile, livezile și culturile de câmp (cereale, sfeclă,…) sunt cei mai intensi utilizatori de pesticide.