首页 > 解决方案 > 减少图的数据点,同时保持其主要特征

问题描述

我有大量数据,需要在图表上重复显示。

该图的宽度为 1400 像素。数据包含超过 30,000 个数据点。因此,我想将数据点减少到大约 1400 个左右,同时仍保持图形的主要特征(最大值、最小值等)。

如果您查看 LabVIEW 和 MATLAB 等程序,它们能够通过压缩数据来显示包含大量数据点的图形,而不会丢失图形的主要功能。我无法使用简单的抽取、平均或移动平均,因为这不会保持图表的特征。

有谁知道这些程序正在使用任何算法,或者会给我预期的结果?我也对性能算法感兴趣。

标签: algorithmmatlabgraphcompressionlabview

解决方案


LabVIEW使用最大-最小抽取算法

正如您从参考资料中看到的那样,一系列数据点被压缩为最大值和最小值,然后将两个点绘制在相同的 x 轴值上,并填充两个点之间的垂直像素。

如果您无法控制绘图的每个像素的渲染方式,那么您可以尝试实现类似的方法,例如取 8 个点,找到最大值和最小值,然后将它们传递给绘图函数/工具(占它们在系列中出现的顺序) - 为您提供四倍的抽取因子。


推荐阅读