jQuery Flot.js: 只获取当前可见的数据点

jQuery Flot.js: Get only currently visible data points

我需要在缩放(或平移,如果您也绑定该事件)后获取当前可见的数据点。

Flot 提供了一些方法,但 none 我可以找出当前可见的数据点。

$("#graphContainer").bind("plotzoom", function (event, plot) {
    getCurrentData(plot);
});

function getCurrentData(plot) {
    console.log(plot.getAxes());
    console.log(plot.getData());
};

getAxes() 方法使您可以访问范围和当前报价。 getData() 方法使您可以访问数组 (var points = plot.getData(); => points[0].data) 中的所有数据点。

我还没有找到在缩放后只提取可见点的方法,这正是我正在尝试做的。如果能提供任何帮助,我将不胜感激。

你必须自己使用 array filter() 函数和

之类的东西来做到这一点
var plotData = plot.getData()[0];
var visiblePoints = plotData.data.filter(dp =>
    dp[0] >= plotData.xaxis.min && dp[0] <= plotData.xaxis.max &&
    dp[1] >= plotData.yaxis.min && dp[1] <= plotData.yaxis.max);