// Use flatRollup to find mean body mass by penguin species, then map to get an array of objects:
d3
.flatRollup(
penguinData,
(v)=>d3.mean(v,(d)=>d.body_mass_g),
(d)=>d.species
)
.map(([species,meanMass])=>({species,meanMass}))
// Create a new bar chart with Observable Plot to visualize mean body mass by species:
import{showMe}from"@observablehq/show-me"
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.