{
const pollutants = ['CH4', 'HFC', 'N2O'];
const selection = vl.selectPoint('Select')
.fields(['POLLUTANT'])
.bind(vl.menu(pollutants).name('Select Pollutant: '));
const highlightLine = vl.markRule({ strokeWidth: 2, color: 'black' })
.data([{ TIME_PERIOD: 2020 }])
.encode(vl.x().fieldT('TIME_PERIOD'));
return vl.markArea({ interpolate: 'basis' })
.data(ghgs_inventory)
.transform(
vl.filter("(datum.POLLUTANT === 'CH4' || datum.POLLUTANT === 'HFC' || datum.POLLUTANT === 'N2O') && datum.UNIT_MEASURE === 'T_CO2E'"),
vl.groupby(['POLLUTANT', 'TIME_PERIOD'])
.aggregate(vl.sum('OBS_VALUE').as('Total_Emissions'))
)
.params(selection)
.encode(
vl.x().fieldT('TIME_PERIOD').title('Year'),
vl.y().fieldQ('Total_Emissions').stack('zero')
.title('Total Emissions (tonnes CO₂-eq)'),
vl.color()
.if(selection, vl.fieldN('POLLUTANT'))
.value('#d3d3d3'),
vl.tooltip([
vl.fieldN('POLLUTANT'),
vl.fieldT('TIME_PERIOD'),
vl.fieldQ('Total_Emissions')
]),
)
.title('Global Greenhouse Gas (GHG) Emissions Over Time (by Gas Type)')
.render();
}