彩票走势图

高性能图表控件LightningChart关于显示频谱图的过去数据问题解答

翻译|使用教程|编辑:杨鹏连|2021-07-02 11:52:44.573|阅读 142 次

概述:本文主要介绍了高性能图表控件LightningChart关于显示频谱图的过去数据的问题解答。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据——超过10亿个数据点。LightningChart包括广泛的2D、高级3D、Polar、Smith、3D饼/甜甜圈、地理地图和GIS图表以及适用于科学、工程、医学、航空、贸易、能源和其他领域的体位功能。

LightningChart.NET重加入在线订购,SignalTools,12个月,WPF版本原价405元,现价3499元,现在抢购立享优惠!立即购买>>

点击下载LightningChart.NET最新试用版  LightningChart JS最新试用版  

Q:显示频谱图的过去数据

首先,我为我糟糕的英语感到抱歉。
我正在为 Spectrogram 开发软件。
正在通过参考演示应用程序的高分辨率频谱图进行实施。
此演示应用程序中的示例代码表明您正在使用 IntensityGridSeries 绘制光谱。
我想要开发的是让用户通过做一些事情(例如,使用鼠标滚轮等)来查看过去的数据。
下图显示了我目前正在实施的图表。我只添加了暂停数据显示的功能。演示应用程序的实现方式几乎没有区别。
在暂停数据的显示之后,需要使用特定动作查看过去数据的功能。
我附上更多图片以帮助您理解我的问题。


F:这应该可以做到,但可能有点棘手。问题是,由于技术原因,您不能拥有一个巨大的连续 IntensityGridSeries,您可以向后滚动。现在的标准 PC 使用 DirectX 11,最大纹理尺寸限制为 16384,可以防止这种情况。此外,dotNET 对数组大小有限制 - 每个数组 2GB(尽管通常可以通过设置 LargeAddressAware 标志来增加)。因此,您可能无法将所有当前和过去的数据点存储在单个数组中。此外,性能可能会显着下降。

一种方法是为过去的点设置一个单独的数据数组。例如,您可以将稍后要查看的数据存储在该数组中,然后通过将其分配为频谱图的数据来显示它。

_spectrogram.SetColorsData(_colorsDataPastPoints, IntensityGridValuesDataOrder.RowsColumns); 
_spectrogram.InvalidateColorsOnly(); 

您也可以以同样的方式切换回主(当前)数据。
当然,您为过去的点创建的每个新数组都会增加应用程序使用的内存。因此,您应该仔细考虑需要多少个单独的数组来存储过去的数据点,因为例如,如果您的应用程序应该运行数小时,那么将所有过去的数据存储在数组中很可能是不明智的。如果您只需要显示前几秒,这种方法应该可以正常工作。

如果有任何疑问,以获取更多信息。

如果您对该图表控件感兴趣,欢迎加入图表控件QQ交流群:740060302

欲购买LightningChart正版授权,或了解更多产品信息请点击


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP