Could you help me with the following scenario?
I’d like to build a stacked bar chart that shows homicide percentages in Latin America per year. Countries with high homicide percentages will be shown, whereas the remaining countries will appear as others and have their respective homicide percentages added up.
Here’s an example.
Let’s suppose my data array is:
const data = [
{ year: '2020', country: 'Brazil', homicides: 0.60 },
{ year: '2020', country: 'Argentina', homicides: 0.10 },
{ year: '2020', country: 'Venezuela', homicides: 0.09 },
{ year: '2020', country: 'Uruguay', homicides: 0.08 },
{ year: '2020', country: 'Paraguay', homicides: 0.04 },
{ year: '2020', country: 'Bolivia', homicides: 0.03 },
{ year: '2020', country: 'Peru', homicides: 0.02 },
{ year: '2020', country: 'Chile', homicides: 0.02 }.
{ year: '2020', country: 'Equador', homicides: 0.02 },
{ year: '2021', country: 'Brazil', homicides: 0.70 },
{ year: '2021', country: 'Venezuela', homicides: 0.10 },
{ year: '2021', country: 'Ecuador', homicides: 0.08 },
{ year: '2021', country: 'Argentina', homicides: 0.06 },
{ year: '2021', country: 'Paraguay', homicides: 0.02 },
{ year: '2021', country: 'Uruguay', homicides: 0.02 },
{ year: '2021', country: 'Chile', homicides: 0.01 },
{ year: '2021', country: 'Peru', homicides: 0.01 }
];
If maxCategories = 6, the result array should be:
const aggregatedData = [
{ year: '2020', country: 'Brazil', homicides: 0.60 },
{ year: '2020', country: 'Argentina', homicides: 0.10 },
{ year: '2020', country: 'Venezuela', homicides: 0.09 },
{ year: '2020', country: 'Uruguay', homicides: 0.08 },
{ year: '2020', country: 'Paraguay', homicides: 0.04 },
{ year: '2020', country: 'others', homicides: 0.09 },
{ year: '2021', country: 'Brazil', homicides: 0.70 },
{ year: '2021', country: 'Venezuela', homicides: 0.10 },
{ year: '2021', country: 'Ecuador', homicides: 0.08 },
{ year: '2021', country: 'Argentina', homicides: 0.06 },
{ year: '2021', country: 'Paraguay', homicides: 0.02 },
{ year: '2021', country: 'others', homicides: 0.04 }
];
I tried to use this question’s answer but the code doesn’t allow me to set the maximum number of categories.
Thank you!