tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
縦棒と折線の複合グラフを表示(VB6.0) ( No.13 )  [親スレッドへ]
日時: 2007/07/27 10:58
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[チャート][][]                                                      *
* キーワード:縦棒と折線の複合グラフを表示、2次元組合せ                            *
***********************************************************************************
-----------------------------------------------------------------------------------
投稿者:花ちゃん  MSChartで縦棒と折線の複合グラフを表示  2007/07/25
-----------------------------------------------------------------------------------
一応全部のコードを掲載しておきますが、表示するデータを追加しただけです。

Private Sub sChartViewSet()
'グラフの表示設定
'------------------- 複合グラフの表示設定 ----------------------
   With MSChart1
      'グラフの種類を 2次元組み合わせ を選択
      .chartType = VtChChartType2dCombination
      
      '合計の系列だけを折線で表示
      .Plot.SeriesCollection(4).SeriesType = VtChSeriesType2dLine
      
      '合計の系列だけを第2Y軸で表示
      .Plot.SeriesCollection(4).SecondaryAxis = True
   End With
  ' 一応これだけの設定で表示できます。
'---------------------------------------------------------------

'以下の部分は好みで設定して下さい。
  
   '目盛り線の設定(点数の横線)Y軸(数値軸)
   With MSChart1.Plot.Axis(VtChAxisIdY).ValueScale
      .Auto = False           '自動設定を解除
      .Maximum = 120          '最大値
      .Minimum = 0            '最小値
      .MajorDivision = 6      '目盛り線の数(等分)20点毎
      .MinorDivision = 2      '補助目盛り線等分  10点毎
   End With
  
   '目盛り線の設定(合計点数の横線)第2Y軸(第2数値軸)
   With MSChart1.Plot.Axis(VtChAxisIdY2).ValueScale
      .Auto = False           '自動設定を解除
      .Maximum = 300          '最大値
      .Minimum = 0            '最小値
      .MajorDivision = 6      '目盛り線の数(等分)50点毎
      .MinorDivision = 2      '補助目盛り線等分  25点毎
   End With
  
  
   '折れ線だけにマーカー・データポイントラベル・線の色を設定
   With MSChart1.Plot.SeriesCollection(4)
      'マーカーの設定
      .SeriesMarker.Auto = False
      .DataPoints.Item(-1).Marker.Style = VtMarkerStyleCircle
      .DataPoints.Item(-1).Marker.Pen.VtColor.Set 255, 0, 255
      .SeriesMarker.Show = True
      'データポイントラベルの表示
      .DataPoints.Item(-1).DataPointLabel.LocationType = VtChLabelLocationTypeAbovePoint
      '折れ線の色を水色で表示
      .DataPoints(-1).Brush.FillColor.Set 0, 255, 255
   End With
End Sub

'-----------------------------------------------
'折れ線で表示する 合計点 をデータに追加
Private Sub sDataOpen()
'グラフ用のデータを作成及び読み込み
   Dim Dat(0 To 5, 0 To 4) As Variant
   Dat(0, 1) = "国語"
   Dat(0, 2) = "数学"
   Dat(0, 3) = "英語"
   Dat(0, 4) = "合計"
  
   Dat(1, 0) = "浅野"
   Dat(1, 1) = 69       '国語の点数
   Dat(1, 2) = 81       '数学の点数
   Dat(1, 3) = 73       '英語の点数
   Dat(1, 4) = 223      '合計の点数
  
   Dat(2, 0) = "安室"
   Dat(2, 1) = 87
   Dat(2, 2) = 80
   Dat(2, 3) = 72
   Dat(2, 4) = 239      '合計の点数
  
   Dat(3, 0) = "加藤"
   Dat(3, 1) = 74
   Dat(3, 2) = 82
   Dat(3, 3) = 96
   Dat(3, 4) = 252      '合計の点数
  
   Dat(4, 0) = "斉藤"
   Dat(4, 1) = 71
   Dat(4, 2) = 69
   Dat(4, 3) = 81
   Dat(4, 4) = 221      '合計の点数
  
   Dat(5, 0) = "鈴木"
   Dat(5, 1) = 84
   Dat(5, 2) = 86
   Dat(5, 3) = 75
   Dat(5, 4) = 245      '合計の点数
  
   'グラフに表示する配列データを設定する
   MSChart1.ChartData = Dat()
End Sub



'-------------------------------------------------------------
'   以下の部分は変更無し

Private Sub Form_Load()
   'フォームのサイズを設定(好みで変更してください)
   Form1.Move 0, 0, 10400, 7000
   'MSChart コントロールの表示サイズを設定
   MSChart1.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
   Call sDataOpen       'データの読み込み
   Call sChartViewSet   'グラフの表示設定
End Sub

Private Sub Form_Resize()
   'フォームのサイズ変更に合わせて MSChart コントロールの表示サイズも変更する
   MSChart1.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
   Me.Caption = "複合グラフで合計点を折れ線で表示"
End Sub


'---------------------------------------------------------------

 ★上記実行図
 http://hanatyan.sakura.ne.jp/samplepic/chartno13-1.gif



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