0

アプリケーションでSteemaTChartを使用しています。このコンポーネントを使用して、データポイントが利用可能になると、通常1,000〜2,000のデータポイントを含む折れ線グラフをリアルタイムでグラフ化します。通常の回線は、完了するまでに約30秒かかります。

2行目または3行目が生成された後、TChartコンポーネントはプロセッサが固定されているポイントに到達します。グラフが更新されている場合でも、他のUIの更新は、新しいデータポイントが追加されるたびにグラフを実行する必要がある再描画の影響を大きく受けています。実験して、線がプロットされているときにグラフを表示しない場合(グラフはウィンドウの別のタブにありますが、現在は表示されていません)、パフォーマンスが大幅に向上し、プロセッサの使用量が増加することがわかりました。劇的にダウン。

このコンポーネントを使用してパフォーマンスを向上させる方法を見つけた人はいますか?

4

1 に答える 1

2

その場合、このスレッドで提案されているAutoRepaintプロパティを使用した非同期ペイント手法は、システムのパフォーマンスを向上させるのに役立ちます。基本的に、ポイントを追加した後にグラフが再描画されないようにAutorepaintをfalseに設定し、trueに戻し、データの追加が終了したらrefreshを呼び出す必要があります。

こちらリアルタイムチャートの記事は、TeeChartアプリケーションのパフォーマンスの向上にも役立つ場合があります。これはDelphiの記事ですが、そのほとんどは.NETバージョンのTeeChartにも適用できます。

最後になりましたが、TeeChartfor.NETにはDirect2Dレンダリングエンジンが付属しています。これは、DSPリアルタイムアプリケーションに必要な高速データスループットに最適です。詳細については、ホワイトペーパー「Windowsフォームでのグラフィックスレンダリングパフォーマンスの向上」を参照してください。

于 2012-08-16T07:05:12.247 に答える