Plot.plot({
width: width + 28,
height: 600,
style: "margin: 0 -14px; width: calc(100% + 28px); max-width: unset;",
color: {scheme: "Magma", type: "log", legend: true, width: 300, label: "Value", tickFormat: ","},
margin: 0,
marks: [
Plot.contour({
x1: -2,
x2: 2,
y1: -2,
y2: 1,
fill: value,
stroke: "#fff",
strokeOpacity: 0.5,
thresholds: d3.range(1, 20).map(n => 2 ** n)
}),
Plot.axisX({anchor: "top", frameAnchor: "bottom", ticks: 20, filter: d => -2 < d && d < 2}),
Plot.axisY({anchor: "right", frameAnchor: "left", filter: d => -2 < d && d < 1})
]
})