2

是否存在从图表中的线或点系列中LightningChartJs获取所有内容的函数?visible points

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

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

我非常欢迎有关该主题或其他解决方案的任何想法。谢谢。

4

1 回答 1

5

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 万个点。如果您只想知道某个点在范围内可见,那么只要一个点在可见范围内,您就可以中断循环。

于 2020-10-19T10:39:49.233 回答