Published
Edited
Mar 13, 2019
Importers
Insert cell
Insert cell
mydata = {

return [...entries]
// omit first and last timestamps
.filter(n => typeof n[0] === "object")
// turn semver string into float
.map(el => {
const value = (el[1].split('-')[0]).replace(/\.(\d$)/, '$1');
return {year: el[0], value: Number(value)}
})
// strip out weird entries
.filter(n => n.value != 0 )
.sort((a,b) => a.value < b.value ? -1 : 1);
}
Insert cell
// data grabbed from https://www.npmjs.com/package/react?activeTab=versions, which doesn't support CORS 😭🐼
Insert cell
Insert cell
entries = {const fields = data.split("\n").map(el => html`${el}`);
return fields
.reduce((acc, el, i) => {
if(i === 0 || i === fields.length - 1) {
acc.set(i === 0 ? 'first' : 'last', new Date(el.attributes.datetime.value));
}
acc.set(new Date(el.attributes.datetime.value), el.textContent);
return acc;
}, new Map)
}
Insert cell
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more