トップ回答者
DataVisualization.Charting X軸の土日を飛ばすには?

質問
回答
-
X 軸の値の型が DateTime だと、内部で double として格納されているようです。なので、土日分も含めて描かれてしまうのではないでしょうか。
系列がひとつだけなら、みっとさんのコードのように X 軸の値の型を文字列にして DataPoint を作れば、土日分を詰めることができるかもしれません。
- 回答としてマーク 佐伯玲 2013年2月15日 6:25
すべての返信
-
設定というか、値を格納する際に曜日見て土・日ならスキップすれば良いかと。
こんな感じで。private void Form1_Load(object sender, EventArgs e) { chart1.Series.Clear(); chart1.Series.Add("グラフ"); chart1.Series["グラフ"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Column; chart1.Series["グラフ"].LegendText = "グラフ"; for (int i = 0; i < 15; i++) { DateTime date = new DateTime(2013, 2, i + 1); if (date.DayOfWeek == DayOfWeek.Sunday || date.DayOfWeek == DayOfWeek.Saturday) continue; System.Windows.Forms.DataVisualization.Charting.DataPoint dataPoint = new System.Windows.Forms.DataVisualization.Charting.DataPoint(); dataPoint.SetValueXY(date.ToString("MM/dd"), i); chart1.Series["グラフ"].Points.Add(dataPoint); } }
曜日はDateTime.DayOfWeekで判定できるので、その場合は格納そのものをcontinueでスキップしてます。
以上、参考まで。
-
X 軸の値の型が DateTime だと、内部で double として格納されているようです。なので、土日分も含めて描かれてしまうのではないでしょうか。
系列がひとつだけなら、みっとさんのコードのように X 軸の値の型を文字列にして DataPoint を作れば、土日分を詰めることができるかもしれません。
- 回答としてマーク 佐伯玲 2013年2月15日 6:25