在使用d3.js时我遇到了两个问题,但它们引发了同样的错误。 第一个当我想用我的一个数组使用那段代码时:
/**
* Simple JS equivalent of the Python set() constructor (without the methods)
* @requires shim: Array.prototype.indexOf
* @param {array} arr The array to turn into a set
* @example
* var mySet = set(['red', 'yellow', 'black', 'yellow']);
* mySet.length; // 3
* JSON.stringify(mySet); // ["red","yellow","black"]
* @see For a fuller version, see {@link https://npmjs.org/package/set}
*/
function set (arr) {
return arr.reduce(function (a, val) {
if (a.indexOf(val) === -1) {
a.push(val);
}
return a;
}, []);
}
D3.js加注:arr.reduce不是一个函数。 当我尝试使用
时出现相同的错误.attrTween('fill',function(d,a){
//choose color dynamicly
return d3.interpolate(a,colorCalibration[zscale(d[2])]);
})
填充矩形。它说attrTween不是一个功能。以下是更多代码:
var zscale = d3.scale.quantize()
.domain([0,200])
.range([0,1,2,3,4,5]);
var colorCalibration = ['#f6faaa','#FEE08B','#FDAE61','#F46D43','#D53E4F','#9E0142'];