Published
Edited
Jun 1, 2022
3 stars
Insert cell
Insert cell
Insert cell
categories = ["country", "age_group"]
Insert cell
data = [
{category: "country", sub_category: "USA"},
{category: "country", sub_category: "Canada"},
{category: "country", sub_category: "Mexico"},
{category: "age_group", sub_category: "1–10"},
{category: "age_group", sub_category: "11–30"},
{category: "age_group", sub_category: "31–60"},
]
Insert cell
viewof category = Inputs.select(categories, { label: "Categories" })
Insert cell
viewof sub_category = Inputs.select(
data
.filter((d) => d.category === category)
.map((d) => d.sub_category),
{ label: "Sub-category" }
)
Insert cell
Insert cell
viewof category2 = Inputs.select([null, ...categories], { label: "Categories" })
Insert cell
data
.filter((d) => category2 === null || d.category === category2)
.map((d) => d.sub_category)
Insert cell
Insert cell
viewof category3 = Inputs.select(["Category", ...categories], { label: "Categories" })
Insert cell
data
.filter((d) => category3 === "Category" || d.category === category3)
.map((d) => d.sub_category)
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