Public
Edited
Dec 7, 2022
Insert cell
# Rischio contagio covid in ambienti chiusi per tipo di DPI

Grafico interattivo sul rischio contagio covid in ambienti chiusi

[L'impatto della ventilazione sul contagio al chiuso](https://www.scienzainrete.it/articolo/limpatto-della-ventilazione-sul-contagio-al-chiuso/chiara-sabelli/2022-01-21), di Chiara Sabelli

Fonte: [DOI:10.1016/j.envint.2020.106112](DOI:10.1016/j.envint.2020.106112)

Uso: Input + Chart
Using [Inputs.range](https://github.com/observablehq/inputs/blob/main/README.md#range) and [Plot](/@observablehq/plot).

Insert cell
Insert cell
Inputs.table(data)
Insert cell
viewof voce = Inputs.radio(
data.map((d) => d.voce),
{ sort: true, unique: true, label: "voce", value : "alta" }
)
Insert cell
viewof ventilazione = Inputs.radio(
data.map((d) => d.ventilazione),
{ sort: true, unique: true, label: "ventilazione", value: "meccanica" }
)
Insert cell
selectedVoce = data.filter((d) => d.voce === voce)
Insert cell
selectedVentialzione = data.filter((d) => d.ventilazione === ventilazione)
Insert cell
viewof filtra = Inputs.table(data.filter((d) => d.ventilazione === ventilazione && d.voce === voce))
Insert cell
grafico = Plot.plot({
y: {
label: "↑ Rischio infezioni (%)",
grid: true,
nice: true
},

x: {
label: "DPI utilizzati"
},
marginTop: 20, // the top margin, in pixels
marginRight: 40, // the right margin, in pixels
marginBottom: 30, // the bottom margin, in pixels
marginLeft: 40, // the left margin, in pixels


marks: [
Plot.barY(filtra, {x: "DPI utilizzati", y: d => d.rischio * 100, fill: "#bab0ab", sort: {x: "y", reverse: true }}),
Plot.ruleY([0, 100])
]
})
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more