我在计算数据
中的最大y值时遇到问题我用
var maxY = d3.max(d3.merge(data.map(function(d){return d.values})), function(d) {return d.rank});
然后
.yDomain([maxY,1])
设置域名。
但正如你可以在我的小提琴(http://jsfiddle.net/Marei/v4ca3pz6/)中看到的那样,它不起作用 - 当我的数据中的最大y为“12”时,图表显示最大值为“90”。
这是我第一次使用nvd3所以也许有人可以帮助我,看看我做错了什么? 非常感谢你!
更新
感谢adilapapaya我通过添加缺少的“+”来找出我们的测试小提琴
答案 0 :(得分:2)
return +d.rank;
计算中的 maxY
。否则,d3.max
将计算假定String
输入的最大值。
答案 1 :(得分:0)
您需要将排名输出为Number
。尝试换行d.rank
。例如:parseInt(return d.rank)