...interpolate is not a function

2020-06-16  本文已影响0人  小拇指的约定021

在D3 interpolate 是v3中的api, v4 v5 中,线生成器采用曲线来定义插值:

虽然将线定义为二维[x,y]点的序列,并通过轮廓线和基线类似地定义区域,但是仍然存在将这种离散表示转换为连续形状的任务:即,如何在要点。daccess-ods.un.org daccess-ods.un.org为此目的提供了各种曲线,通常不会直接构建或使用它们,而是传递给线 .curvearea .curve

错误代码:

var line = d3.line()

.x(function (d, i) {

if (indexData) {

return xScale(xDomain[indexData[i]]);

        }else {

return xScale(xDomain[i]);

        }

})

.y(function (d, i) {

return yScale(d);

    })

.interpolate("cardinal")

正确的应该是:

var line = d3.line()

.x(function (d, i) {

if (indexData) {

return xScale(xDomain[indexData[i]]);

        }else {

return xScale(xDomain[i]);

        }

})

.y(function (d, i) {

return yScale(d);

    })

.curve(d3.curveBasis);

上一篇 下一篇

猜你喜欢

热点阅读