(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.

Următoarea hartă din 2024 de Simon C. Scherrer (via @freakonometrics) indică faptul că o treime din populația elvețiană trăiește într-o fâșie de cinci kilometri lățime de fiecare parte a liniei de cale ferată Intercity 1.


Care este situația în Franța?
Nu am găsit cu ușurință statisticile pe linie, dar bănuiesc că o configurație similară — linia principală (indiferent ce înseamnă), orașe principale, mulți pasageri, care traversează țara — ar fi întreruptul Eurostar (Londra)–Calais–Lille–Marne-la-Vallée–Lyon–Marsilia sau actualul TGV din Oui Lille-Lyon-. Cu toate acestea, nu se opresc la Paris intra murosașa că ne este dor de o bună parte a populației.
Config
library(sf) library(glue) library(dplyr) library(osmdata) library(purrr) library(httr2) library(rnaturalearth) library(stringr) library(ggplot2) sf_use_s2(FALSE)
Este de asemenea necesar un sistem binar 7z
Date
Feroviar
Putem obține geometria căii ferate din relația OSM cu {osmdata} și o interogare API Overpass.
osm <- r"((out:xml)(timeout:6000);
relation(5951791);
(._;>;);
out body;)" |>
osmdata_sf()
eurostar <- osm |>
pluck("osm_multilines")
stations <- osm$osm_points |>
filter(railway == "stop",
uic_ref %in% c("8775100", "8772319", "8711184", "8722326"))
fr <- ne_countries(scale = "large") |>
st_intersection(eurostar |>
st_bbox() |>
st_as_sfc() |>
st_buffer(4.5, joinStyle = "MITRE", mitreLimit = 10))
eurostar |>
ggplot() +
geom_sf(data = fr, color = "darkgrey") +
geom_sf(color = "red", linewidth = 0.5, alpha = 0.8) +
geom_sf(data = stations) +
geom_sf_text(data = stations,
aes(label = str_wrap(name, width = 15,
whitespace_only = FALSE)),
size = 3,
hjust = 1.1) +
labs(title = "London-Marseille",
caption = glue("data: OpenStreetMap contributors
Natural Earth
https://r.iresmi.net - {Sys.Date()}")) +
theme_void() +
theme(plot.caption = element_text(size = 7, color = "grey40"),
plot.background = element_rect(fill = "white"),
plot.margin = unit(c(.2, .2, .2, .2), units = "cm"))

Figura 1: Calea ferată Londra-Marsilia
Populația
Populația provine din grila INSEE 2015 200 m.
Fișierul 7z este în sine arhivat!
if (!file.exists("carreaux_200m_met.gpkg")) {
pop_file <- "Filosofi2019_carreaux_200m_gpkg.zip"
if (!file.exists(pop_file)) {
request(glue("https://www.insee.fr/fr/statistiques/fichier/7655475/\
{pop_file}")) |>
req_perform(pop_file)
}
unzip(pop_file)
system("7z e Filosofi2019_carreaux_200m_gpkg.7z carreaux_200m_met.gpkg")
system("rm Filosofi2019_carreaux_200m_gpkg.*")
}
pop <- read_sf("carreaux_200m_met.gpkg")
Rezultate
La 5 km
pop_5km <- pop |>
st_filter(eurostar |>
st_transform("EPSG:2154") |>
st_buffer(5000)) |>
st_drop_geometry() |>
summarise(pop_tot = sum(ind, na.rm = TRUE)) |>
pull(pop_tot)
pop_fr <- pop |>
st_drop_geometry() |>
summarise(pop_tot = sum(ind, na.rm = TRUE)) |>
pull(pop_tot)
- Populația totală: 62.971.073
- Populație în raza de 5 km: 4.163.426
Deci, doar 6,6 % din populația franceză (metropolitană) se află la 5 km de această linie de cale ferată.
La 50 km
Dacă ne extindem la 50 km, vom captura cea mai mare parte a Parisului…
pop_50km <- pop |>
st_filter(eurostar |>
st_transform("EPSG:2154") |>
st_buffer(50000)) |>
st_drop_geometry() |>
summarise(pop_tot = sum(ind, na.rm = TRUE)) |>
pull(pop_tot)
- Populație în raza de 50 km: 25.696.130
Deci 40,8 % din populația franceză (metropolitană) se află la 50 km de această linie de cale ferată. Nu-i rău, dar întrebarea ar putea fi acum: trenul oprește într-o stație de lângă tine? Acesta este lăsat ca un exercițiu cititorului (spoiler: din ce în ce mai puțin…).
eurostar |>
ggplot() +
geom_sf(data = fr, color = "darkgrey") +
geom_sf(color = "red", linewidth = 0.5, alpha = 0.8) +
geom_sf(data = eurostar |>
st_transform("EPSG:2154") |>
st_buffer(50000),
fill = "red", alpha = 0.2) +
geom_sf(data = stations) +
geom_sf_text(data = stations,
aes(label = str_wrap(name, width = 15,
whitespace_only = FALSE)),
size = 3,
hjust = 1.1) +
labs(title = "London-Marseille",
caption = glue("data: OpenStreetMap contributors
Natural Earth
https://r.iresmi.net - {Sys.Date()}")) +
theme_void() +
theme(plot.caption = element_text(size = 7, color = "grey40"),
plot.background = element_rect(fill = "white"),
plot.margin = unit(c(.2, .2, .2, .2), units = "cm"))

Figura 2: Calea ferată Londra-Marsilia în Franța și un tampon de 50 km
