Plot.plot({
subtitle: "Total ammount of revenue per pizza, stacked by category and sorted by year. Also shows the total revenue per category per year.",
fx: {label: null},
grid: true,
width: width,
marginLeft: 55,
marginRight: 0,
color: {scheme: "Viridis"},
y: {domain: [0, 9500000]},
marks: [
Plot.barY(pizza_revenue_category_year, Plot.stackY(
{order: "y", reverse: true},
Plot.groupZ({y: "sum"}, {
filter: (d) => d.date == year, y: "revenue", z: "name", fill: "name", fx: "category", inset: 0.5,
tip: {format: {fill: true, y: d => `$${d.toLocaleString("en")}`, z: false, fx: false}}
})
)),
Plot.tip(revenue_category_year, {
filter: (d) => d.date == year, y: "revenue", fx: "category",
text: d => `$${d.revenue.toLocaleString("en")}`, dy: -7, anchor: "bottom",
title: d => `${d.category}: $${d.revenue.toLocaleString("en")}`,
}),
Plot.ruleY([0])
]
})