Javascript 使用D3.min查找不为0的最小值
我正试图使用D3在我的数据集中找到最低的值。但是,我也有0的值,但是我希望D3找到不是0的最小值 目前我正在使用: min(数据,函数(d){返回d.houseValues;}) 但很明显,当找到0时,有时会返回0 有办法做到这一点吗?或者,唯一的解决方案是使用if语句构建普通for循环以忽略0值Javascript 使用D3.min查找不为0的最小值,javascript,d3.js,Javascript,D3.js,我正试图使用D3在我的数据集中找到最低的值。但是,我也有0的值,但是我希望D3找到不是0的最小值 目前我正在使用: min(数据,函数(d){返回d.houseValues;}) 但很明显,当找到0时,有时会返回0 有办法做到这一点吗?或者,唯一的解决方案是使用if语句构建普通for循环以忽略0值 谢谢 尝试先过滤数据以删除零,例如 var noZeroes = data.filter(function(d) { return d.houseValues !== 0; }); d3.min(no
谢谢 尝试先过滤数据以删除零,例如
var noZeroes = data.filter(function(d) { return d.houseValues !== 0; });
d3.min(noZeroes, function(d) {return d.houseValues; })
您可以使用常量
Infinity
,因为Math.min(Infinity,someNumber)
总是返回someNumber
(除非someNumber
也是无穷大)。所以看起来是这样的:
smallest = d3.min(data, function(d) {return d.houseValues || Infinity; })
如果需要,您可以检查最小==无穷大
,如果所有房屋值均为0,则该值将为真