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);
我需要在缩放(或平移,如果您也绑定该事件)后获取当前可见的数据点。
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);