在LightningChartJs中获取系列的可见点

问题描述

LightningChartJs中存在一个函数,以便从图表中的线或点序列中获取所有visible points

如果缩放图表,如果没有可用的可见点,我想显示一些内容。在某些情况下,我的数据中断了。

现在我必须检查范围并过滤该范围内的所有点,但这似乎并不是很有效。我想LC知道所有可见的点,可以给我。

我非常欢迎您对此主题或其他解决方案提出任何想法。谢谢。

解决方法

LightningChart JS不会跟踪任何时候可见的数据点。因此,您用来解决此问题的方法是目前的最佳方法。

类似的事情似乎表现合理。

function getDataInRange(data,rangeStart,rangeEnd){
    const inRangeData = []
    const dataLength = data.length
    let curPoint
    for(let i = 0; i < dataLength; i += 1){
        curPoint = data[i]
        if(curPoint.x >= rangeStart && curPoint.x <= rangeEnd){
            inRangeData.push(curPoint)
        }
    }
    return inRangeData
}

在我的个人计算机上,它可以在10ms±2ms的时间内处理100万个点。如果您只想知道某个点在该范围内可见,则只要在可见范围内一个点就可以中断循环。