【发布时间】:2023-04-05 02:09:02
【问题描述】:
我试图有一个可以通过画布和每个轴缩放的趋势。 画布应缩放所有轴,而单轴缩放应仅缩放自身。
到目前为止一切顺利。
现在我希望画布只缩放选定的轴。但是当我重新选择和取消选择轴时,它会通过缩放到当前比例来跳转。
我想过将每个轴的缩放添加到画布上,但是
canvas.call(zoom1).call(zoom2);
只会调用最后一个。
有人知道吗?
谢谢!
【问题讨论】:
我试图有一个可以通过画布和每个轴缩放的趋势。 画布应缩放所有轴,而单轴缩放应仅缩放自身。
到目前为止一切顺利。
现在我希望画布只缩放选定的轴。但是当我重新选择和取消选择轴时,它会通过缩放到当前比例来跳转。
我想过将每个轴的缩放添加到画布上,但是
canvas.call(zoom1).call(zoom2);
只会调用最后一个。
有人知道吗?
谢谢!
【问题讨论】:
我通过调用相应组的缩放功能找到了解决方案。
See https://jsfiddle.net/DaWa/3jfs6zb1/2/
现在我有一个问题,两个变换(全局和单轴)不相互适应。
有什么想法吗?
【讨论】:
我找到了另一种缩放多轴和全局缩放的方法。
以下示例没有画布,但应该以相同的方式工作:
https://jsfiddle.net/DaWa/wnxu7m04/3/
与之前的解决方案不同的是,
the scale will be adapted when changing the zoom selection
that all rects ecpet of rect which calls the zoom will be reset.
我知道这个解决方案有点hacky,但目前没有官方解决方案(见https://github.com/d3/d3-zoom/issues/48)
【讨论】: