d3.js关于比例尺报Cannot read property 'linear' of undefined错误的解决方法

时间:2022-12-02 08:25:53

今天在自学d3js,学到比例尺的使用时,发现报了个错,错误如下所示:

d3.js关于比例尺报Cannot read property 'linear' of undefined错误的解决方法

上网搜了好久都百思不得其解,最后还是在一个英文网站找到了原因,为:In D3 v4 it is no longer named d3.scale.linear().Use d3.scaleLinear() instead.

翻译过来的意思就是:在d3js v4版本以后中的线性比例尺不再使用d3.scale.linear()。而是使用d3.scaleLinear()来代替它。

比如你原来是这样写的:

var dataset2 = [2.5,2.1,1.7,1.3,0.9];
var linear = d3.scale.linear().domain([0,d3.max(dataset2)]).range([0,250]);

现在改成这个样子就可以了。

var dataset2 = [2.5,2.1,1.7,1.3,0.9];
var linear = d3.scaleLinear().domain([0,d3.max(dataset2)]).range([0,250]);
这个是极客学院上d3入门教程第六章的错误。不过后来下面的评论区已经有人发现并提出来了,我却后知后觉的去百度上找,哎 尴尬