vl.markCircle()
.data({
'url': 'https://raw.githubusercontent.com/lacepadilla/classdata/main/disaster_deaths.csv'
})
.transform(
vl.lookup('Id')
.from(
vl.data({
'url': 'https://raw.githubusercontent.com/lacepadilla/classdata/main/disaster_econ.csv'
})
.key('Id')
.fields('economic_damages')
),
vl.groupby('Year', 'disaster')
.aggregate([
vl.sum('economic_damages').as('Total_Damages'),
vl.sum('deaths').as('Total_Deaths')
])
)
.encode(
vl.x().fieldT('Year'),
vl.y().fieldN('disaster')
.sort(vl.average('Total_Deaths').order('descending')),
vl.size().fieldQ('Total_Deaths'),
vl.tooltip().fieldQ('Total_Damages')
)
.width(600)
.render()