{
const scaleOptions = {grid:true, tickSize: 0, tickPadding: 10, label: null}
return Plot.plot({
marginLeft: 60,
width: 600,
height: 600,
y: {
...scaleOptions,
type: 'log',
ticks: 10,
axis: 'right'
},
x: {
...scaleOptions,
type: 'log',
axis: 'top'
},
color: {
legend: true,
width: 600,
swatchSize: 10
},
marks: [
Plot.dot(data, {
x: 'Training dataset size (datapoints)',
y: 'Training compute (FLOPs)',
r: d => Math.log1p(d.Year - 1950),
stroke: '#8c8c8c',
strokeWidth: .8,
fill: 'Domain',
fillOpacity: .5,
title: d => `${d['System']}\n${d['Organization(s)']}\n${d.Domain}`
})
]
})
}