recommendedBreakdownTreemapNested = {
const topLevelNames = ['Friend', 'Ad']
const topLevel = recommendedRollup.filter(d => topLevelNames.includes(d[0]));
const recommendedRollupStrangerChildren = recommendedRollup.filter(d => !topLevelNames.includes(d[0]));
const recommendedRollupNested = topLevel;
const strangers = ['Strangers', d3.sum(recommendedRollupStrangerChildren, d => d[1])];
strangers.children = recommendedRollupStrangerChildren
recommendedRollupNested.push(strangers);
const hierarchy = d3.hierarchy({children: recommendedRollupNested})
.sum(d => d.children ? 0 : d[1])
.sort(d => d[1]);
const recommendedBreakdownTreemap = Treemap(
hierarchy,
{
value: d => d.data[1],
label: (d, n) => d.data[0] + '\n' + Math.round(d.data[1] / snitchesFiltered.length * 100) + '%',
color: d => recommendationColorSettings.domain[0],
width: 720,
height: 720
});
d3.select(recommendedBreakdownTreemap).selectAll('rect')
.style('fill', d => {
return recommendationColorScale(d.data[0]);
})
.style('fill-opacity', 1);
return recommendedBreakdownTreemap
}