我试图将D3 V4代码的块转换为V3。这是给我麻烦的代码块。
//var spiral = d3.radialLine()
var spiral = d3.svg.line.radial()
//.curve(d3.curveCardinal)
.curve(d3.line.curve())
//.curve(d3.curve.linear)
.angle(theta)
.radius(radius);
我评论的第一行引用了radialLine
,我能够解决,但是,当尝试将d3.curveCardinal
转换为d3.line.curve()
时,我会收到以下错误:
unturew typeerror:无法读取未定义的属性
的属性'曲线
我尝试了d3.line.curve()
的一些衍生物,但无济于事。有谁知道我能成功翻译这本书的方式?
引用changelog:
line .intpaly和 .intpaly方法已被 line .curve和 afore 取代。曲线。曲线是使用曲线接口而不是作为返回SVG路径数据字符串
的函数实现的。
对于您的向后港口,这意味着要替换
.curve(d3.curveCardinal)
.interpolate("cardinal")
整个语句因此变为:
var spiral = d3.svg.line.radial()
.interpolate("cardinal")
.angle(theta)
.radius(radius);
V3 API文档具有有关d3.svg.line.radial()
及其插值模式的正确用法的所有详细信息。