filtered = hospitals
.filter(d => {
let events = eventsByHospital.get(d.hospital_pk);
if (events && events[week]) return value(events[week]) > cutoffPercent;
})
.sort(function(a, b) {
let eventsA = eventsByHospital.get(a.hospital_pk);
let eventsB = eventsByHospital.get(b.hospital_pk);
if (!eventsA || !eventsB) return -1;
return value(eventsA[week]) - value(eventsB[week]);
})
.map(d => {
let p = projection([d.LONGITUDE, d.LATITUDE]);
let events = eventsByHospital.get(d.hospital_pk);
if (events && events[week] && p) {
let v = value(events[week]);
return {
...d,
events: events,
v
};
}
return null;
})
.filter(d => !!d)