2

2 つの列を持つ DB からの結果セットがあります。

ページに折れ線グラフを表示し、XValueMembers = my time 列 (AM / PM の時間がある) と YValueMembers - count をバインドしています。

問題は、グラフ コントロールが X 軸で値を自動的にグループ化するため、1 から 12 までの値しか表示できないことです。実際には、AM/PM 形式のため、結果セットには 1 から 12 までの各数値が 2 回繰り返されます。

グループ化せずに、X 軸に午前 1 時から午前 12 時までと午後 1 時から午後 1 時までのすべての値を表示するにはどうすればよいですか。

4

1 に答える 1

0

データベースからの結果が整数である場合は、DateTimeオブジェクトを作成することをお勧めします。

それらを X 軸の値として使用し、軸ラベルをフォーマットすることができます。例えば:

DateTime dateTime1 = new DateTime(2013, 01, 01);
DateTime dateTime2 = new DateTime(2013, 01, 02);
DateTime dateTime3 = new DateTime(2013, 01, 03);

DateTime[] xValues = new DateTime[3] { dateTime1, dateTime2, dateTime3 };
int[] yValues = new int[3] { 0, 1, 2 };

chart.Series[0] = new Series();
chart.Series[0].Points.DataBindXY(xValues, yValues);

chart.ChartAreas[0].AxisX.LabelStyle.Format = "MMMM dd, yyyy - hh:mm tt";

この場合tt、 は AM/PM 指定子を表すことに注意してください。

他のカスタムの日付と時刻の文字列形式については、こちらを参照してください。

于 2013-06-26T18:04:01.993 に答える