Вы можете уменьшить ваши данные до словаря, а затем отобразить их в массив, например,
results = [ { unit: 5, date: '2015-12-04 00:01:00' },
{ unit: 10, date: '2015-12-04 00:01:00' },
{ unit: 5, date: '2015-12-04 00:31:00' },
{ unit: 9, date: '2015-12-04 00:31:00' },
{ unit: 5, date: '2015-12-04 01:01:00' },
{ unit: 10, date: '2015-12-04 01:01:00' },
{ unit: 10, date: '2015-12-04 01:31:00' },
{ unit: 5, date: '2015-12-04 01:31:00' },
{ unit: 10, date: '2015-12-04 02:01:00' },
{ unit: 5, date: '2015-12-04 02:01:00' },
{ unit: 5, date: '2015-12-04 02:31:00' },
{ unit: 9, date: '2015-12-04 02:31:00' },
{ unit: 5, date: '2015-12-04 03:01:00' },
{ unit: 9, date: '2015-12-04 03:01:00' },
{ unit: 5, date: '2015-12-04 03:31:00' },
{ unit: 10, date: '2015-12-04 03:31:00' },
{ unit: 10, date: '2015-12-04 04:01:00' },
{ unit: 5, date: '2015-12-04 04:01:00' }]
// first make an object with {date: unit} value as such
const newResults = results.reduce((acc, item) => ({
...acc,
[item.date]: (acc[item.date] || 0) + item.unit
}) , {})
console.log(newResults)
/*
{
"2015-12-04 00:01:00": 15,
"2015-12-04 00:31:00": 14,
"2015-12-04 01:01:00": 15,
"2015-12-04 01:31:00": 15,
"2015-12-04 02:01:00": 15,
"2015-12-04 02:31:00": 14,
"2015-12-04 03:01:00": 14,
"2015-12-04 03:31:00": 15,
"2015-12-04 04:01:00": 15
}
*/
// now if you want array representation for this you can do
const finalResult = Object.keys(newResults).map(key => ({date: key, unit: newResults[key]}))
console.log(finalResult)
/*
[
{
"date": "2015-12-04 00:01:00",
"unit": 15
},
{
"date": "2015-12-04 00:31:00",
"unit": 14
},
{
"date": "2015-12-04 01:01:00",
"unit": 15
},
{
"date": "2015-12-04 01:31:00",
"unit": 15
},
{
"date": "2015-12-04 02:01:00",
"unit": 15
},
{
"date": "2015-12-04 02:31:00",
"unit": 14
},
{
"date": "2015-12-04 03:01:00",
"unit": 14
},
{
"date": "2015-12-04 03:31:00",
"unit": 15
},
{
"date": "2015-12-04 04:01:00",
"unit": 15
}
]
*/