// calling the zoom generator on a rectangle selection. All zoom events on
// this rectangle receives all zoom events and is not influenced by the
// transformation, thus it always stays in place.
canvas.append("rect")
.attr("id", "zoomHelper")
.attr("fill", "transparent")
.attr("width", width)
.attr("height", height)
.call(zoom);
}
*/
/*
{
const tooltip = d3.select(".vis .tooltip");
let res = null;
pointMark.on("mouseenter", d => {
res = d;
console.log(d);
})
yield res;
}
*/
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.