[英]How can I check if a value is inside of a d3 scale range
我使用d3 的 scaleLinear 。 我想過濾規模域之外的值。
var arr = [0, 1, 15, 60, 700];
var scaleX = d3.scaleLinear()
.domain([10, 100])
.range([0, 200]);
// I need something like this:
scaleX.filter(arr) // I want to get: [1, 15, 60]
我最好的解決方案是 foreach 所有值並檢查域的最小值/最大值是否小於/大於給定值。 像這樣。
有沒有更緊湊的解決方案?
var filteredArr = arr.filter(function(d) {
return d >= scaleX.domain()[0] && d <= scaleX.domain()[1]
})
將過濾器方法應用於arr
變量:
const filteredArray = arr.filter(function (value) { return ((value >= 10) && (value <= 100)) });
filteredArray
將只包含 10 到 100(含)之間的值。
您可以在此處閱讀有關.filter
方法的更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.