C# Chartコントロールについてわかりきったことや忘れやすいことのまとめ
Chart.Seriesはグラフ(データ)のコレクション
Chart.ChartAreasはXY軸や目盛りのコレクション
1つの棒グラフを表示
chart1.Series.Clear(); //グラフ1 Series series = new Series(); series.Color = Color.Red; series.ChartType = SeriesChartType.Column; series.Points.AddXY(1, 5); series.Points.AddXY(2, 2); series.Points.AddXY(3, 8); chart1.Series.Add(series);
複数のグラフを重ねて表示するときはChart.Seriesに追加
2種類の棒グラフを重ねて表示
chart1.Series.Clear(); //グラフ1 Series series = new Series(); series.Color = Color.Red; series.ChartType = SeriesChartType.Column; series.Points.AddXY(1, 5); series.Points.AddXY(2, 2); series.Points.AddXY(3, 8); chart1.Series.Add(series); //グラフ2 series = new Series(); series.Color = Color.Blue; series.ChartType = SeriesChartType.Column; series.Points.AddXY(1, 3); series.Points.AddXY(2, 1); series.Points.AddXY(3, 5); chart1.Series.Add(series);
複数の棒グラフを表示すると重ならないように表示される。
重ねたいときはグラフ2をSeriesChartType.RangeColumnにしてグラフ幅を設定
chart1.Series.Clear(); //グラフ1 Series series = new Series(); series.Color = Color.Red; series.ChartType = SeriesChartType.Column; series.Points.AddXY(1, 5); series.Points.AddXY(2, 2); series.Points.AddXY(3, 8); series["PointWidth"] = "0.8"; chart1.Series.Add(series); //グラフ2 series = new Series(); series.Color = Color.Blue; series.ChartType = SeriesChartType.RangeColumn; series.Points.AddXY(1, 3); series.Points.AddXY(2, 1); series.Points.AddXY(3, 5); series["PointWidth"] = "0.2"; chart1.Series.Add(series);
グラフの説明(凡例)のテキストと表示、非表示は以下で設定
series.LegendText = "グラフ1"; series.IsVisibleInLegend = true;