vl.layer(
vl.markLine({ strokeWidth: 3, interpolate: "monotone" })
.data(populationData)
.encode(
vl.x()
.fieldQ("Age")
.title("Age Group")
.scale({ domain: [0, 90] }),
vl.y()
.fieldQ("People")
.title("Population")
.scale({ type: "log" }),
vl.color()
.fieldN("Year")
.scale({ domain: [1900, 2000], range: ["steelblue", "red"] }),
vl.strokeDash().
fieldN("Sex").title("Sex"),
vl.tooltip(["Age", "People", "Year", "Sex"])
),
vl.markPoint({ size: 50 })
.data(populationData)
.encode(
vl.x().fieldQ("Age"),
vl.y().fieldQ("People"),
vl.color().fieldN("Year"),
vl.shape().fieldN("Sex"),
vl.tooltip(["Age", "People", "Year", "Sex"])
)
)
.width(700)
.height(450)
.title("How has the distribution of age groups changed from 1900 to 2000?")
.render()