Public
Edited
Feb 8, 2024
Insert cell
Insert cell
Insert cell
data = raw
.filter(datum => datum.payload_size)
.map(datum => ({...datum.decoded.payload, ...datum.hotspots[0]})
)
Insert cell
Insert cell
Insert cell
Insert cell
Plot.plot({
inset: 8,
grid: true,
color: {legend: true},
marks: [Plot.dot(data, {x: "longitude", y: "latitude", fill: "altitude", r:7})]
})
Insert cell
Insert cell
Insert cell
intervals= pairs
.map(([a,b]) => (b.reported_at - a.reported_at) / 1000)
Insert cell
Insert cell
Insert cell
Insert cell
bins = intervals
.filter(dt => dt < 30)
.map(dt => (dt - Math.round(dt)).toFixed(2))
.reduce((counts,each)=>{counts[each]=(counts[each]||0)+1; return counts},{})
Insert cell
Insert cell
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