tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
Chartコントロール(VB2008版)でレーダーチャートを表示(VB.NET) ( No.0 )  [親スレッドへ]
日時: 2011/04/27 10:35
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[チャート][描画・画像][]                                  *
* キーワード:Microsoft Chart Controls,レーダチャート,Point,Radar,チャート       *
***********************************************************************************
投 稿 日 : 2010/03/01
投 稿 者 : 花ちゃん

Microsoft Chart Controls for Microsoft .NET(Chartコントロール(VB2008版))を
使ってのレーダーチャートの描画

新たに、VB.NET Tips一覧の方に、Microsoft Chart Controls の項を設けて図表付きで詳しく
解説しておりますのでそちらも併せてご覧ください。
 http://www.hanatyan.sakura.ne.jp/dotnet/index.html
 http://www.hanatyan.sakura.ne.jp/dotnet/chartframe.htm


'===================================================================================================
'タイトル:Chartコントロール(VB2008版)でレーダーチャートを表示(364) - VB2008
'動作確認:WindowsVista/WindowsXP  VB2008(EE)(VB2005) Framework 3.5
'[Option Compare Text] [Option Explicit On] [Option Infer On] [Option Strict On]で設定
'使用データは、下記よりダウンロードして使って下さい。
'http://www.hanatyan.sakura.ne.jp/bbs_gif/chartdat3.zip
'使用コントロール及び配置は、下図を参照して下さい。
'---------------------------------------------------------------------------------------------------
'========1=========2=========3=========4=========5=========6=========7=========8=========9=========0
Imports System.Data.OleDb
'チャート関係の名前空間です。
'Imports System.Windows.Forms.DataVisualization.Charting

Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, _
                       ByVal e As System.EventArgs) Handles MyBase.Load
'--------------------------------------------------------------------------------------
'下記の表示設定は、[CSVファイルをADO.NETを使ってDataGridViewに表示(VB.NET)]と同じです。
   Dim ds As New DataSet
   Dim colums As Integer
   Using cn As New System.Data.OleDb.OleDbConnection
      Dim FolderPath As String = Application.StartupPath()
      Dim csvFileName As String = "test.csv"
      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

'---------------------------ここからレーダーチャートの表示設定----------------------------------

   Dim Col(5) As Color   'グラフのカラーを設定(お好みで、設定しなくてもOK)
   Col(0) = Color.DeepSkyBlue : Col(1) = Color.DeepPink : Col(2) = Color.ForestGreen
   Col(3) = Color.HotPink : Col(4) = Color.BlueViolet : Col(5) = Color.Lime

   With Chart1
      .Series.Clear()         '系列を初期化
      .BackColor = Color.Yellow
      .ChartAreas(0).BackColor = Color.MistyRose
      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.Radar
         'グラフの色を透明に設定(重なった場合後ろが見えないので)
         .Series(columnName).Color = Color.Transparent
          'グラフの線の色を設定
         .Series(columnName).BorderColor = Col(i - 1)
          '線の太さを設定
         .Series(columnName).BorderWidth = 5
         'X(軸のラベルテキストの読込・設定(科目名))
         .Series(columnName).XValueMember = ds.Tables(0).Columns(0).ColumnName.ToString()
         'グラフ用のデータの読込・設定(点数)
         .Series(columnName).YValueMembers = columnName
      Next

      '■------------------- X軸・Y軸のフォント・線等の設定 ----------------Start--■
      With Chart1.ChartAreas(0)
         With .AxisX
            .LabelAutoFitMaxFontSize = 12
         End With

         With .AxisY
            .Maximum = 100       '点数の最大値
            .Minimum = 0         '点数の最小値
            .Interval = 20       '点数のメモリ間隔(20点毎)
            .LabelStyle.Font = New Font("MS Pゴシック", 12, FontStyle.Bold)
            .LabelStyle.ForeColor = Color.Red
            .MajorGrid.LineWidth = 2

            .LineDashStyle = DataVisualization.Charting.ChartDashStyle.Solid
            '10点毎に補助線を表示
            .MinorGrid.Enabled = True     'True に設定しないと表示しない
            .MinorGrid.Interval = 10
            .MinorGrid.LineDashStyle = DataVisualization.Charting.ChartDashStyle.Dash
         End With
      End With
      '■-------------------------------------------------------------------End----■
   End With

End Sub
End Class

  '     使用データ

  '      浅野  安室  加藤         
  '国語   45  87  74
  '数学   55  75  87
  '英語   87  72  96
  '社会   65  75  80
  '理科   85  73  65

(画像をクリックすると元のサイズで見られます。)



 [スレッド一覧へ] [親スレッドへ]