gpt4 book ai didi

javascript - 放大 Highcharts 时仅获取可见的 x 轴日期

转载 作者:行者123 更新时间:2023-11-28 00:46:45 25 4
gpt4 key购买 nike

我有一个使用 highcharts 和 ajax 创建的相当复杂的图表,它包含使用日期时间 xAxis 的堆叠列和多个样条图。

我还根据图表数据生成 HTML 数据表,该数据表根据用户选择事件(例如使用图例打开/关闭系列)重新生成。这工作正常,但我遇到的问题是当用户放大时收集正确的数据(它仍然获取从第一个日期到结束日期的所有数据)。

主要问题是我似乎找不到诸如visible:true之类的变量来区分循环期间当前 View 中是否存在xAxis值。我查看了图表对象,包括系列、点等,但没有运气。

我也尝试过使用 getExtremes,但这些值似乎与实际日期相差数千毫秒(明天我将再次研究此方法)

下面是我在 jQuery 中构建 HTML 表以收集一些数据之前使用的一小段代码。

  $.each(chart.series, function (i, item) {
//Generation Data
if (item.name === "Generation") {
generation.push(item.yData);
}
//Check if points are defined and then loop to get total circuit data
if (typeof (item.points) !== "undefined") {
$.each(item.points, function (j, point) {
//Check if asset is visible
if (point.series.visible === true) {
var type = point.series.options.type;
//Get only data that is a column (asset)
if (type !== "spline" || typeof (type) === "undefined") {
//Check if previous key exists already or not
if (typeof (totalCircuits[point.x]) === 'undefined') {
totalCircuits[point.x] = point.y;
}
else {
var oldVal = 0;
oldVal = totalCircuits[point.x];
var newVal = oldVal + point.y;
totalCircuits[point.x] = newVal;
}
}
}

});
}
});

希望这至少有一定意义,任何帮助或指导将不胜感激

最佳答案

如果您在 x 轴上使用 axis.getExtremes() 函数,您应该能够在循环时检查您的 x 值,以查看它们是否在最小/最大 x 轴值内,从而确定是否它们在当前缩放级别可见。

关于javascript - 放大 Highcharts 时仅获取可见的 x 轴日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27277378/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com