我在将 d3 v3 转换为 d3 v4 时遇到问题
我有这个代码:
var brush = d3.svg.brush()
.x(x)
.y(y)
.on("brushstart", brushstart)
.on("brush", brushmove)
.on("brushend", brushend);
但我不知道如何在 v4 中编写它
我试过了
var brush = d3.brush()
.brushX(x)
.brushY(y)
.on("brushstart", brushstart)
.on("brush", brushmove)
.on("brushend", brushend);
注意:我使用包 npm: "d3-brush": "^1.0.4",
最佳答案
这是正确的行为。阅读docs ,人们注意到,d3.brush()
本身将完成创建二维画笔的工作:
Creates a new two-dimensional brush.
因此,创建的画笔上没有方法 brush.brushX()
和 brush.brushY()
。方法d3.brushX()
和 d3.brushY()
将创建一个一维画笔。
因此,您的代码最终将如下所示:
var brush = d3.brush()
.on("start", brushstart)
.on("brush", brushmove)
.on("end", brushend);
关于javascript - d3 v4 中的二维画笔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43370609/