a={
const pagesGrouped=d3.group(labels,d=>d.name)
const allLabels=[]
const allLabelsPages=[]
const newArray= []
for (let [key, value] of pagesGrouped) {
const newLabels=[]
for(const image of value){
for( let i=1; i<7; i++){
if(image['label_'+i]!=null && !newLabels.some(d=>d.l===image['label_'+i])) {
newLabels.push({'l':image['label_'+i], c:image['confidence'+i]})
allLabels.push(image['label_'+i])
allLabelsPages.push({label:image['label_'+i], page:key})
}
}
}
if(newLabels.length>0) {
newArray.push({
page: key,
labels:newLabels
})
}
}
const pagesByLabel=d3.rollup(allLabelsPages,v=>v.map(item=>item.page), d=>d.label)
return {labelsByPage:newArray,allLabels, pagesByLabel}
}