Sicurezza pubblica — i delitti provincia per provincia
I delitti denunciati alle forze di polizia, provincia per provincia: l'andamento negli anni, il confronto tra i principali tipi di reato, e la mappa d'Italia col tasso ogni 100.000 abitanti. Dati ufficiali ISTAT 2020-2024.
spazio dati «sicurezza-pubblica» — il collante della suite: sul tuo dispositivo, multi-utente con un invito (link o QR), cifrato end-to-end.
oppure aprila come app unica
Cosa registra
- Sigla provincia
- Sigla provincia (es. BO)
Composta da 3 micro app
Un compito ciascuna, sugli stessi dati: ogni micro app legge e scrive lo spazio dati condiviso «sicurezza-pubblica» (col tuo consenso, chiesto alla prima apertura). Tutto resta sul tuo dispositivo — e con un solo invito l'intera suite diventa multi-utente, cifrata end-to-end.
Come funziona
Questa è un'app Reactive: un semplice documento di testo che il browser trasforma in un'app funzionante — moduli, dati dal vivo, tabelle, statistiche e persino grafici, senza installare né configurare nulla.
- Usala subito. Premi «Usa questa app»: si apre subito nel tuo browser, già pronta, con i dati salvati solo sul tuo dispositivo.
- I tuoi dati restano tuoi. Tutto è memorizzato in locale sul dispositivo, separato per ogni app: niente account, niente server, niente da configurare.
- Rendila tua. Il testo qui sotto è l'app per intero: copialo, cambia campi, viste e parole, e le modifiche diventano subito interattive.
- Condividila come file. Un'app è un semplice file: salvalo, esportalo o condividilo con un link; e con la collaborazione cifrata più persone modificano gli stessi dati in tempo reale.
Il testo dell'app
# 🚨 Sicurezza pubblica
I delitti denunciati alle forze di polizia, provincia per provincia:
l'andamento negli anni, il confronto tra i principali tipi di reato, e la
mappa d'Italia col tasso ogni 100.000 abitanti. Dati ufficiali ISTAT
2020-2024.
:::::page{title="La tua provincia" icon="📈"}
## L'andamento nella tua provincia
Sigla della provincia (es. `BO`, `MI`, `TO`, `NA`, `PA`).
::input[prov]{value="BO" placeholder="Sigla provincia"}
::od-query{into="trend" sql="SELECT anno AS anno, tasso_per_100k AS tasso FROM delitti WHERE sigla = '{#prov}' AND tipo_reato = 'totale' ORDER BY anno"}
::chart-line{data="trend" x="anno" y="tasso" height="16rem"}
:::table{path="trend" headers="Anno,Delitti ogni 100.000 ab." pagesize="6" search="false"}
{anno} | {tasso}
:::
Il tasso è **ogni 100.000 abitanti**: già normalizzato, confrontabile tra
province di dimensione diversa senza bisogno di altri incroci.
:::::
:::::page{title="I reati" icon="🔍"}
## Che tipo di delitti
L'ultimo anno disponibile, per la provincia scelta: furti, rapine, omicidi
volontari e reati da stupefacenti (tasso ogni 100.000 abitanti).
::input[prov]{value="BO" placeholder="Sigla provincia (es. BO)"}
::od-query{into="reati" sql="SELECT CASE tipo_reato WHEN 'furti' THEN 'Furti' WHEN 'rapine' THEN 'Rapine' WHEN 'omicidi_volontari' THEN 'Omicidi volontari' WHEN 'stupefacenti' THEN 'Stupefacenti' ELSE tipo_reato END AS reato, tasso_per_100k AS tasso FROM delitti WHERE sigla = '{#prov}' AND tipo_reato != 'totale' AND anno = (SELECT max(anno) FROM delitti) ORDER BY tasso DESC"}
::od-query{into="serieReati" sql="SELECT anno AS anno, CASE tipo_reato WHEN 'furti' THEN 'Furti' WHEN 'rapine' THEN 'Rapine' WHEN 'omicidi_volontari' THEN 'Omicidi volontari' WHEN 'stupefacenti' THEN 'Stupefacenti' ELSE tipo_reato END AS reato, tasso_per_100k AS tasso FROM delitti WHERE sigla = '{#prov}' AND tipo_reato != 'totale' ORDER BY anno DESC, tasso DESC" limit="200"}
**Clicca una barra** per filtrare la serie storica su quel reato (secondo
clic: filtro tolto — è il filtro incrociato dei veri strumenti BI).
::::dashboard{path="reati"}
::chart-bar{data="reati" x="reato" y="tasso" height="18rem"}
:::table{path="serieReati" headers="Anno,Reato,Tasso ogni 100k ab." pagesize="8" search="false"}
{anno} | {reato} | {tasso}
:::
::::
::chart-pie{data="reati" label="reato" value="tasso" height="16rem"}
:::::
:::::page{title="La mappa" icon="🗺️"}
## Il tasso di delittuosità, provincia per provincia
Ogni provincia colorata per **delitti totali ogni 100.000 abitanti**,
l'ultimo anno disponibile. Passa il mouse per il valore.
::od-query{into="mappa" sql="SELECT p.provincia AS provincia, p.geojson AS geojson, d.tasso_per_100k AS tasso FROM istat_confini_province p JOIN delitti d ON d.sigla = p.sigla WHERE d.tipo_reato = 'totale' AND d.anno = (SELECT max(anno) FROM delitti)" limit="150"}
:::map{path="mappa" geojson="geojson" fill="tasso" height="28rem"}
**{provincia}** — {tasso} delitti ogni 100.000 abitanti
:::
Il tasso di delittuosità dipende anche da quanto un territorio *denuncia*, non
solo da quanto accade: le grandi città e le zone turistiche tendono a
svettare per i reati contro il patrimonio.
:::::
---
I dati sono i **delitti denunciati dalle forze di polizia all'autorità
giudiziaria** (fonte ISTAT — IstatData, dati aperti), tasso ogni 100.000
abitanti per tipo di reato, e i **confini** ISTAT (CC BY 4.0). Le fonti si
agganciano da sole con la sigla della provincia. Nessun dato tuo lascia il
dispositivo.