1.Chart コントロールの基本的な使い方(16_Cht_01) (旧、SampleNo.362) |
1.Chart コントロールの基本的な使い方(はじめに) 2.Chart コントロールの基本的な使い方 3.Microsoft Chart Control を使って作成できるグラフの一覧 4. 5. 6. |
下記プログラムコードに関する補足・注意事項 動作確認:Windows 8.1 (Windows 7) / VB2013 (VB2010) / Framework 4.5.1 / 対象の CPU:x86 Option :[Compare Text] [Explicit On] [Infer On] [Strict On] Imports :System.Windows.Forms.DataVisualization.Charting 参照設定:追加なし その他 :使用データ(Chart.csv)は、次よりダウンロードして使って下さい。 chartdat.zip(各サンプル共通) :このサンプルを使用される前に、左のメニューの基本的な使い方とワンポイントテクニック集をご覧になって下さい。 このサンプル等の内容を無断で転載、掲載、配布する事はお断りします。(私の修正・改訂・削除等が及ばなくなるので) 必要ならリンクをはるようにして下さい。(引用の場合は引用元のリンクを明記して下さい) |
1.Chart コントロールの基本的な使い方(はじめに) |
chartdat.zip (各サンプル共用)を解凍すると Chart 関係のサンプルで使用するデータがまとめて入っておりますので、その中の指定のデータを使って下さい。(サンプルの EXE と同じフォルダーに入れておいて下さい。) 動作確認は、VB2013 上で行っておりますが、元々は、VB2010 で作成したコードをペーストして使っておりますので、VB2010 でも同様に動作するはずです。 下記コードは、今後の Chart 関係の Tips の動作確認にも使用しますので、ここに掲載の Tips の動作確認をされる場合は、必ず動作するようにしておいて下さい。 尚、VB2005 や VB2008 で使用される場合は、旧のサイトに記載の記事の方を参考にして下さい。 |
2.Chart コントロールの基本的な使い方 |
'チャート関係の名前空間です。 Imports System.Windows.Forms.DataVisualization.Charting Public Class Form1 Private ds As New DataSet Private colums As Integer Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Call ChartDataOpen("..\..\..\data\", "Chart.csv") End Sub Private Sub ChartDataOpen(ByVal FolderPath As String, ByVal fileName As String) 'CSV ファイルを読み込みChart に表示するデータソースを設定 ds.Clear() '複数回実行する場合は、必要により DataSet を初期化して下さい。 'ds.AcceptChanges() Using cn As New System.Data.OleDb.OleDbConnection Dim csvFileName As String = fileName cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FolderPath & _ ";Extended Properties=""Text;HDR=YES;IMEX=1;FMT=Delimited""" Using da As System.Data.OleDb.OleDbDataAdapter = _ New System.Data.OleDb.OleDbDataAdapter("SELECT * FROM " & csvFileName, cn) da.Fill(ds, "Table1") Chart1.DataSource = ds 'Chart に表示するデータソースを設定 colums = ds.Tables(0).Columns.Count - 1 'データの系列数を取得 End Using End Using End Sub Private Sub ChartClar(ByVal cht As Chart) 'Chart の設定を初期値に戻す(通常は必要ありません) With cht .Titles.Clear() 'タイトルの初期化 .BackGradientStyle = GradientStyle.None .BackColor = Color.White '背景色を白色に .BorderColor = .BackColor '外形をデフォルトに .BorderSkin.SkinStyle = BorderSkinStyle.None .Legends.Clear() '凡例の初期化 .Legends.Add("Legend1") .Series.Clear() '系列(データ関係)の初期化 .ChartAreas.Clear() '軸メモリ・3D 表示関係の初期化 .ChartAreas.Add("ChartArea1") .Annotations.Clear() End With End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 'Microsoft Chart Control のテスト環境用の基本表示 Call ChartClar(Chart1) '設定を一旦初期値に戻す。(通常は必要ありません。) With Chart1 Debug.Print(Chart1.ProductVersion) For i As Integer = 1 To colums Dim columnName As String = ds.Tables(0).Columns(i).ColumnName.ToString() '系列の設定(国語・数学等) .Series.Add(columnName) 'グラフの種類を縦棒グラフに設定 .Series(columnName).ChartType = DataVisualization.Charting.SeriesChartType.Column 'X 軸のラベルテキストの読込・設定(浅野等の氏名) .Series(columnName).XValueMember = ds.Tables(0).Columns(0).ColumnName.ToString() 'グラフ用のデータの読込・設定(点数) .Series(columnName).YValueMembers = columnName Next End With End Sub End Class 図1.上記実行結果及び使用コントロールとその配置図 |
3.Microsoft Chart Control を使って作成できるグラフの一覧 |
下記の定数を変更する事で色々なグラフを作成する事ができます。 'グラフの種類を縦棒グラフに設定(グラフの種類を変更する場合はこの定数を変更する) .Series(columnName).ChartType = DataVisualization.Charting.SeriesChartType.Column SeriesChartType 列挙体(実際のグラフの図はこちらをご覧ください) メンバー名 説 明 Area 面グラフ。 Bar 横棒グラフ。 BoxPlot ボックスプロットグラフ。 Bubble バブルチャート。 Candlestick ローソク足チャート。 Column 縦棒グラフ。 Doughnut ドーナツグラフ。 ErrorBar 誤差範囲グラフ。 FastLine FastLine グラフ。 FastPoint FastPoint グラフ。 Funnel じょうごグラフ。 Kagi かぎ足チャート。 Line 折れ線グラフ。 Pie 円グラフ。 Point ポイントグラフ。 PointAndFigure PointAndFigure グラフ。 Polar 極座標グラフ。 Pyramid ピラミッドグラフ。 Radar レーダーチャート。 Range 範囲グラフ。 RangeBar RangeBar グラフ。 RangeColumn 範囲縦棒グラフ。 Renko 練行足チャート。 Spline スプライングラフ。 SplineArea スプライン面グラフ。 SplineRange スプライン範囲グラフ。 StackedArea 積み上げ面グラフ。 StackedArea100 100% 積み上げ面グラフ。 StackedBar 積み上げ横棒グラフ。 StackedBar100 100% 積み上げ横棒グラフ。 StackedColumn 積み上げ縦棒グラフ。 StackedColumn100 100% 積み上げ縦棒グラフ。 StepLine StepLine グラフ。 Stock 株価チャート。 ThreeLineBreak ThreeLineBreak グラフ。 |
4. |
5. |
6. |
検索キーワード及びサンプルコードの別名(機能名) |