Public
Edited
Nov 6, 2023
Insert cell
Insert cell
zero_female_data = FileAttachment("zero-female-speakers@1.csv").csv({
typed: true
})
Insert cell
zero_female_data.columns
Insert cell
zero_female_sorted = zero_female_data
.filter((d) => d.phase === 2)
.sort((a, b) => b["zero-speakers"] - a["zero-speakers"])
.map((d) => d.subject)
Insert cell
zero_female_chart = Plot.plot({
marginLeft: 150,
x: { domain: [0, 1] },
y: { domain: zero_female_sorted },
color: {
domain: [1, 2],
range: ["red", "blue"],
legend: true,
type: "ordinal"
},
marks: [
Plot.dot(zero_female_data, {
x: "zero-speakers",
y: "subject",
fill: "phase"
})
]
})
Insert cell
underrep_data = FileAttachment("underrepresented-female-speakers.csv").csv({
typed: true
})
Insert cell
underrep_sorted = underrep_data
.filter((d) => d.phase === 2)
.sort((a, b) => b.underrepresented - a.underrepresented)
.map((d) => d.subject)
Insert cell
underrep_chart = Plot.plot({
marginLeft: 150,
x: { domain: [0, 1] },
y: { domain: underrep_sorted },
color: {
domain: [1, 2],
range: ["red", "blue"],
legend: true,
type: "ordinal"
},
marks: [
Plot.dot(underrep_data, {
x: "underrepresented",
y: "subject",
fill: "phase"
})
]
})
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