我正在尝试使用D3来查找数据集中的最低值.但是,我也有0的值,但我希望D3找到不是0的最低值.
目前我正在使用:
d3.min(data,function(d){return d.houseValues;})
但显然,当找到0时,这有时会返回0.
有没有办法做到这一点?或者是使用if语句构建普通for循环以忽略0值的唯一解决方案..?
谢谢!
你可以使用常量Infinity,因为Math.min(Infinity, someNumber)总是返回someNumber(除非someNumber也是无穷大).所以它看起来像这样:
smallest = d3.min(data, function(d) {return d.houseValues || Infinity; })
Run Code Online (Sandbox Code Playgroud)
如果需要,您可以检查smallest == Infinity,true如果所有房屋价值均为0.