C#のチャート(Windows Forms用のChart)を使って、折れ線グラフを作成しています。
Datagridviewの数値を折れ線グラフに表示させるプログラムですが、
下記のサイトの2つ目の画像のように、X軸の目盛を0,2000,4000のように、等間隔にしたいのですが、任意の値を設定する方法する方法がわかりません。
https://stackoverrun.com/ja/q/5398138
(※上記のURLの記事はASP.NET 用の Chart)
Datagridviewの数値は、下記の通りです。
x(Cells[0]), y(Cells[1])
532, 8
891, 13
1241, 9
1875, 5
2134, 16
3242, 2
3923, 6
4745, 4
…のように、xの数値が16000まで続いています。
ちなみに、ソフトはVisual Studio 2019です。
private void button1_Click(object sender, EventArgs e) //ボタンを押すと、グラフ表示 { Chart(); } public void Chart() //グラフ表示 { ChartArea area = new ChartArea("area1"); Title title = new Title("title1"); title.DockedToChartArea = "area1"; area.Name = "グラフテスト"; Series series1 = new Series(); chart1.Series.Clear(); series1.ChartType = SeriesChartType.Line; //折れ線 //グラフのデータを追加 for (int row = 0; row > dataGridView1.RowCount; row++) { series1.Points.AddXY(dataGridView1.Rows[row].Cells[0].Value,dataGridView1.Rows[row].Cells[1].Value); } //X軸目盛り設定 chart1.ChartAreas["ChartArea1"].AxisX.IsMarginVisible = true; chart1.ChartAreas["ChartArea1"].AxisX.Interval = 2000; chart1.ChartAreas["ChartArea1"].AxisX.Maximum = 16000; chart1.ChartAreas["ChartArea1"].AxisX.Minimum = 0; //Y軸目盛り設定 chart1.ChartAreas["ChartArea1"].AxisY.Minimum = 0; chart1.ChartAreas["ChartArea1"].AxisY.Maximum = 50; chart1.ChartAreas["ChartArea1"].AxisY.Interval = 10; //目盛線 chart1.ChartAreas["ChartArea1"].AxisX.MajorGrid.Enabled = false; chart1.ChartAreas["ChartArea1"].AxisY.MajorGrid.Enabled = true; chart1.Series.Add(series1); }
プログラムは、一部抜粋しましたが、上記のように設定しました。
実際に「button1」ボタンを押すと、X軸の目盛が勝手に変わって、Datagridviewの値が表示されています。
理想としては、x軸の起点を0と表示し、それ以降は2000毎に目盛りと線を2000,4000・・・,16000と表示したいと思っています。
何か良い方法はありますでしょうか?
質問の方法が変かと思いますが、よろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー