我已经绘制了一个类似画笔和缩放的图表 ,当鼠标在 y 轴上并放大时,我想为 y 轴添加另一个缩放事件(目前仅放大 x 轴)
我添加了一些这样的代码:
var zoomY = d3.zoom()
.scaleExtent([1, Infinity])
.translateExtent([[0, 0], [width, height]])
.extent([[0, 0], [width, height]])
.on("zoom", zoomedY);
function zoomedY(){
focus.select(".axis--y")
.call(yAxis.scale(d3.event.transform.rescaleY(y)));
//
y.domain(d3.event.transform.rescaleY(y).domain());
};
focus.select(".axis--y").call(zoomY);
如果我删除了问题d3.event.transform.rescaleY(yChart).domain()
,当鼠标打开和放大/缩小时,y轴会改变,但图形不会改变。添加后,放大时可以,但无法缩小(只是卡住并且页面向下滚动)。我该如何解决这个问题,或者有更好的解决方案吗?