2016-04-15 20 views
0

私はVisual Studio 2015、C#、WinFormsで作業しています。なぜチャートに追加ポイントが表示されないのですか?

私は、次のコードを加え、その後、ラインにツールキットと変更タイプから正常チャートを追加:チャートが表示されていない理由

Output

chart1.ChartAreas[0].AxisX.LabelStyle.Format = "HH"; 
chart1.ChartAreas[0].AxisX.Interval = 1; 
chart1.ChartAreas[0].AxisX.IntervalType = DateTimeIntervalType.Hours; 
chart1.ChartAreas[0].AxisX.IntervalOffset = 0; 
chart1.ChartAreas[0].AxisX.IsMarksNextToAxis = true; 
chart1.ChartAreas[0].AxisX.IsStartedFromZero = true; 
DateTime minDate = DateTime.Today; 
DateTime maxDate = minDate.AddHours(23); 
chart1.ChartAreas[0].AxisX.Minimum = minDate.ToOADate(); 
chart1.ChartAreas[0].AxisX.Maximum = maxDate.ToOADate(); 
chart1.Series[0].BorderWidth = 2; 
for (int i = 0; i < 24; i++) 
{ 
    chart1.Series[0].Points.AddY(i); 
} 

出力をポイントを追加しましたか?

+0

おそらくAxisX.MinimumとAxisX.Maximumの範囲外です。デバッガで関与する変数の値を見てください。ダブルが表示されます。それは問題を解決するはずです.. – TaW

答えて

0

私はあなたがX値欠場と思う

chart1.Series[0].Points.Add(new Point(x, y)); 

EDIT(X = 0上のすべての点のドローは?):間違っていました。

問題は、axisのminX値が42475.0であるため、デバッグをチェックインすることです。最大値は42475,9583333333です。 Xc < 0,24の値は表示されません。

+0

私はどの制限を使うべきですか? – Fran

+0

あなたはどんなX軸に依存しますか? chart1.Series [0] .Points.AddXY(新しいポイント(i + minDate.ToOADate()、y)); 次に、あなたの軸の最小点と1の間隔(iインクリメントから)のX点を取得する必要があります。 Axは42475.0 - 42475,9583333333なので、範囲は1未満です。再構成してください:) – Elektryczny

0

XAxisの範囲(最小値と最大値)を非常に大きな値に設定する場合は、DateTime.ToOADateのドキュメントを参照してください。

これらの値をデータポイントコレクションに追加するYポイント値だけを設定することもできます。この結果は、使用しているグラフタイプ(指定していない)によって異なります。

+0

私はImを線種を使って指定しました。このドキュメントは、正直であるとはとても言えません。 – Fran

+0

これは、軸に表示する内容に応じて、最小値0と最大値23を開始点として試したい場合があります。 –

関連する問題