DOBON.NET DOBON.NETプログラミング掲示板過去ログ

ChartとDataGridView

  • 題名: ChartとDataGridView
  • 著者: のりお
  • 日時: 2012/12/15 12:51:19
  • ID: 31179
  • この記事の返信元:
    • (なし)
  • この記事への返信:
  • ツリーを表示
環境/言語:[Win7,VB2008,.NET 3.5SP1]
分類:[.NET]

ChartとDataGridViewに関する質問です。

以下のコードにて表(DataGridView,dgvMeas)に直値を代入し、それをグラフに表示しているのですが、x軸のラベルには"1","2"と表示されてしまいます。

Friend Function testDrw2() As Integer
Dim c_strHeader() As String = {"AAA", "BBB"}

'データ表
With frmMain.dgvMeas
.ColumnCount = c_strHeader.GetUpperBound(0) + 1 '列数を設定
.RowHeadersVisible = False

Dim i As Integer = 0
For Each clmn As DataGridViewColumn In frmMain.dgvMeas.Columns
With clmn
.HeaderText = c_strHeader(i)
End With
i += 1
Next
.Rows.Add(0.005, 100)
End With

'グラフ
With frmMain.chartMeas
.Series.Clear() '系列を初期化
.ChartAreas.Clear()

Dim chartArea1 As ChartArea = New ChartArea()
.ChartAreas.Add(chartArea1)

Dim series1 As Series = New Series()
series1.ChartType = SeriesChartType.FastLine
frmMain.dgvMeas.Rows(0).Selected = True
For Each cel As DataGridViewCell In frmMain.dgvMeas.SelectedCells
series1.Points.Add(cel.Value)
Next

.Series.Add(series1)
End With
End Function

x軸ラベルに、表のカラムヘッダー表示である"AAA","BBB"を表示させたいのですが方法が分かりません。

希望条件
・直値で表へ代入したデータをグラフ表示したい。(データは1行のみでファイルには落としません。)
・x軸のラベルにカラムヘッダーを表示したい。
・上記の条件を満たし、「ChartとDataGridViewを関連付ける」というような表現が可能ならそのようにしたい。(コーディングがシンプルになりそうな気がするので)CSVファイルを読み込んで上記のように表示する例をWEBで見つけましたが今回は直値で実現したいと思います。

初歩的な質問かと思いますが、わかる方いらしたらご教授、お願い致します。
■No31179に返信(のりおさんの記事)

series1.Points.Add
を使用せず
DataTableにデータを設定して
http://hpcgi1.nifty.com/MADIA/vbnet/wwwlng.cgi?print+201209/12090001.txt
前後の投稿を参考にしてXValueMember , YValueMembersを割り当てると良いです。
  • 題名: Re[2]: ChartとDataGridView
  • 著者: のりお
  • 日時: 2012/12/18 18:42:37
  • ID: 31189
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
■No31186に返信(shuさんの記事)

shu さん、こんにちは。
完全に理解できたという訳ではありませんが、
何とか表示できるようになりました。
(もっと勉強したいと思います)

これで少し進めそうです。大変助かりました。

ありがとうございました。m(__)m
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板