javascript - 如何查找 d3 中给定范围内的数据点数量

标签 javascript d3.js

我正在尝试查找系列中位于给定范围 (xMin,yMin)(xMax, yMax) 内的数据点数量。举个例子,如果我的系列线图看起来像 (1,1) (2,2) (4,4) (6,7) (9,10) 我的范围是从 (3,3)(8,8) code>,那么 2 点满足我正在寻找的标准,它们是 => (4,4) (6,7)

(我试图解决的实际问题是,如果我有一个矩形来缩放系列图,那么如果缩放矩形至少捕获原始系列中的 N 个数据点,则允许缩放)

在 d3 中有一个简单的方法可以做到这一点吗?

谢谢

最佳答案

仅使用 JavaScript,这相当简单:

var data = [[1,1],[2,2],[4,4],[6,7],[9,10]];

function filterData(minArr, maxArr) {
  return data.filter(function(d) {
    return d[0] >= minArr[0] &&
           d[0] <= maxArr[0] &&
           d[1] >= minArr[1] &&
           d[1] <= maxArr[1];
  });
}

console.log(filterData([3,3], [8,8]))  //[[4,4],[6,7]]

关于javascript - 如何查找 d3 中给定范围内的数据点数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27239811/

相关文章:

javascript - d3.js 标记自动定向不起作用

javascript - 如何将 echo 语句保存在由 javascript 确认框组成的变量中?

c# - 从 html 页面渲染 pdf

javascript - 仅显示一次网站入口模式

javascript - 在 Node 中使用箭头函数时 Arguments 对象的行为不正确

javascript - 为什么馅饼的颜色没有改变?

javascript - d3.js 空数据数组错误处理

java - 使用 Closure-compiler.jar 使用 ANT 进行 r.js 优化时出现非法字符错误

d3.js - 如何将鼠标悬停在 D3 中的 Line Graph Interactive

javascript - 附加 d3 拖动时无法突出显示异物中的文本