我使用MS Chart控件作为快速折线图来绘制模拟器生成的实时数据。每个图表最多有10个系列,最多可以有10个这样的独立图表。数据以每50-60毫秒的大约50-100个数据点的速率生成,我必须在所有图表中绘制。几乎没有时间数据一直到图表控件,但是当涉及Chart.Series.Points.AddXY()
时,问题就开始了。
我已经阅读了SO和MSDN的讨论,MS Chart在每次添加新点后都会失效。所以我已经包含以下代码:
_chart.Series[index].Points.AddXY(simTime, YValue);
// delete more than max. points.
if (_chart.Series[index].Points.Count > MaxTrendPoints)
_chart.Series[index].Points.RemoveAt(0);
// Repaint only after adding so many points
if (_chartUpdateCounter >= 50)
{
_chartUpdateCounter = 0;
_chart.Series.ResumeUpdates();
_chart.Series.Invalidate();
_chart.Series.SuspendUpdates();
}
停止频繁重新绘制图表控件。这对我来说根本没有任何改善。
任何有关解决我的问题的指示都将非常感激。