source(here::here("_rinit.R"))invisible(Sys.setlocale("LC_TIME", "fr_FR.UTF-8"))# cd ~/iCloud/website/data/ssmsi; /usr/local/bin/R -e 'quarto::quarto_render("serieschrono-datagouv.qmd")'knitr::opts_chunk$set(echo =TRUE, message =FALSE, warning =FALSE,fig.width =9, fig.height =5.5, dpi =150)sc_path <- here::here("data", "ssmsi", "serieschrono-datagouv.parquet")# Unite_temps : "YYYY" (annuel), "YYYYMmm" (mensuel), "YYYYTq" (trimestriel).parse_ut <-function(x) { y <-as.integer(substr(x, 1, 4)) m <- dplyr::case_when(grepl("M", x) ~as.integer(sub(".*M", "", x)),grepl("T", x) ~ (as.integer(sub(".*T", "", x)) -1L) *3L +1L,TRUE~1L )as.Date(sprintf("%d-%02d-01", y, m))}sc <- arrow::read_parquet(sc_path) |> dplyr::filter(!is.na(Valeurs)) |> dplyr::mutate(date =parse_ut(Unite_temps),# Le champ Periodicite est vide pour ~la moitié des lignes ; on la# redéduit du format de Unite_temps ("YYYY" / "YYYYMmm" / "YYYYTq").freq = dplyr::case_when(grepl("M", Unite_temps) ~"Mensuelle",grepl("T", Unite_temps) ~"Trimestrielle",TRUE~"Annuelle" ) )n_series <- dplyr::n_distinct(sc$Titre)n_zones <- dplyr::n_distinct(sc$Zone_geographique)annee <-range(as.integer(substr(sc$Unite_temps, 1, 4)))theme_barres <-theme_minimal(base_size =12) +theme(plot.title =element_text(face ="bold"),plot.subtitle =element_text(colour ="grey35"),panel.grid.minor =element_blank())
Recueil hétérogène de 160 séries chronologiques publiées par le SSMSI sur data.gouv.fr : nombres d’infractions, de victimes, de mis en cause et de véhicules, en niveau et pour 1 000 habitants, à des pas de temps annuel, trimestriel ou mensuel, pour la France, la France métropolitaine, les régions et les 105 zones géographiques (départements pour l’essentiel), de 2006 à 2026.