Public
Edited
May 26, 2024
1 fork
Insert cell
Insert cell
data1 = FileAttachment("pldb@1.json").json()
Insert cell
data = data1.filter((row) => row.usesSemanticVersioning)
Insert cell
Plot.plot({
title: "Programming Language Version Numbers",
caption:
"Chart by: BreckYunits.com - Made with: ObservableHQ.com - Data Source: PLDB.io",
subtitle:
"Rust is on version 1. Python is on version 3. C# is on version 12. The average programming language is on version 2.9. 73% are on Version 0, 1 or 2. Only 5% have a major version greater than 10.",
y: { grid: false },
x: { ticks: 26 },
color: { legend: true },
marks: [
Plot.rectY(
data.filter((row) => row.latestMajorVersion < 26),
Plot.binX(
{ y: "count" },
{ x: "latestMajorVersion", fill: "rank", interval: 1 }
)
),
Plot.ruleY([0])
]
})
Insert cell
Plot.plot({
inset: 8,
grid: true,
color: {
legend: true
},
marks: [
Plot.dot(
data.filter((i) => i.appeared > 1970 && i.rank < 300),
{ x: "appeared", y: "latestMajorVersion" }
)
]
})
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