2016-12-28 10 views
-2

チャートをリストに追加しようとしています。このリストには2と4が含まれます。C#チャートのY値に追加

foreach (decimal D in numbers) 
{ 
    barChart.Series[0].Points.AddXY(1, D); 
} 

X軸のインデックス1にDを追加する必要があります。しかし、これはX1で6ではなく4を出力します。それがリストの4に到達すると、それに追加するのではなく、そこにある2を上書きします(6にする)。上書きするのではなく、追加するにはどうすればよいですか?

編集:私は明らかに十分な情報を与えませんでした。私はWindowsフォームを使用しています。私が使用しているグラフは、Visual Studio 2015のデータセクションにあります。

+0

HTTPをお読みください。 //stackoverflow.com/help/how-to-ask質問する前に – Damian

+0

どのようなチャートですか?それはプラグイン、あなたが作ったモデル、Googleはbarchartsを実装するGoogleのグラフがありますか? –

+1

を指定してください。あなたは何をターゲットにしていますか?Winforms、WPF、ASP ..? __Always__あなたの質問に正しくタグを付けてください! - AddXYは、新しいDataPointがPointsコレクションに追加されることを意味します。それぞれのx値は1で、(2)点のy値は2と4です。y値は変更されません。これを行うには、おそらく: 'barChart.Series [0] .Points [0] .YValues [0] + = D' – TaW

答えて

1

AddXYメソッドの意味を誤解しています。

y値または任意の値は変更されません。

AddXYは、新しいDataPointPointsコレクションに追加されたことを意味します。

あなたのコードにはそれぞれ、1のx値があり、2点のy値は24です。

barChart.Series[0].Points[0].YValues[0] += D; 

をあなたの番号を使用すると、すべてのチャート値のための基本数値型である、二重にキャストする必要があります小数であれば:あなたは多分、書きます行うには

barChart.Series[0].Points[0].YValues[0] += (double)D; 
+0

それはうまくいった!ありがとうございました!それが正しいことなら、私の作業コードは私の答えに編集されています。 –

+1

LarsTechは、私の質問に私自身の答えで編集すべきではないと指摘した。とにかく、ポイントをまだ持っていなければ、範囲外の例外のインデックスを投げるので、tryステートメントがあることを確認してください。 –

+0

はい、あなたは大丈夫です。しかし、すべての必要なチェックを追加することは、SOの回答ではむしろ正常です。彼らはあなたの要求に応じて、利用可能なポイントを直接チェックするのが試してみるよりも良いかもしれません。 – TaW

関連する問題