chart = {
const svg = d3.create("svg")
.attr("viewBox", [0, 0, width + 28, height])
.style("display", "block")
.style("margin", "0 -14px")
.style("width", "calc(100% + 28px)");
svg.append("g")
.attr("fill", "none")
.attr("stroke", "#fff")
.attr("stroke-opacity", 0.5)
.selectAll("path")
.data(contours)
.join("path")
.attr("fill", d => color(d.value))
.attr("d", d3.geoPath());
svg.append("g")
.call(xAxis);
svg.append("g")
.call(yAxis);
return svg.node();
}