0

2 つの領域を持つ Winforms アプリケーションでチャート コントロール (正式には Dundas Chart ですが、これは 4.0 以降の標準のチャート コントロールです) を作成しました。上部は「株価」グラフ、下部は「列」グラフです。このチャート コントロールの 2 つの領域は、右側では均等に並んでいますが、左側では異なります。

次の図には、2 つの領域の長さの違いを示す赤い矢印があります。

ここに画像の説明を入力

これら 2 つの領域を連携させるには、上部領域の各マーカーが下部領域のマーカーと整列するように、x 軸に沿って同じ長さでなければなりません。小さなデータセットの場合、それらの違いは最小限ですが、データセットが変化するにつれて、より顕著になります。

両者の違いは、グラフの種類が違うからだと思います。スケーリングを期待して上部領域の長さを取得しようとしましたが、軸の長さを取得する方法がないようです。

この問題を解決するためのリンク、アドバイス、または推測をいただければ幸いです。

ありがとうございました。

4

1 に答える 1

0

わかりましたので、少し調査した後、問題を特定することができました。各グラフの chartarea 内には、X 軸と Y 軸、高さ、幅、自動スケーリングに関する値を含む innerplotposition 構造体が存在します。各チャートエリアを自動的にスケーリングしないように設定し、innerplotposition 内から各チャートエリアの値を一致させました。これにより、グラフが適切に整列されました。

余談ですが、チャート エリアは重要であり、関連しているため、チャート エリアの配置を可能にする位置構造も備えています (チャートを相互に持ち上げるなど)。

于 2013-03-14T21:17:41.260 に答える