NonSoft

MSCHRT20.OCXでグラフを表示するサンプル(VB.NET)

 サンプルソース
<このサンプルの概要>
VB.NETで簡単にグラフを表示する方法を調査しました。
VB6のCHARTコントロール(mschrt20.ocx)を使用するのが一番簡単そうなのでサンプルを作成しました。

グラフ用のコントロールは[Microsoft Chart Control 6.0 (SP4) (OLEDB)](mschrt20.ocx)を使用しています。
mschrt20.ocxはVB6のランタイムに入っていますので、ベクターからダウンロードする事が出来ます。
VB6ランタイムと称しているもの全てにmschrt20.ocxが入っている訳ではありませんので、説明を参照するか
試しにインストールして確認する必要があります。

mschrt20.ocxを入手出来れば、後はツールボックスに追加してフォームに貼り付けて使用するだけです。

このサンプルではサインカーブを表示しています。

mschrt20.ocxを使用したツールがありますので紹介します。
プロセスLOG出力&表示ツール
プロセス毎のCPU使用率の推移やメモリ空き容量の推移を定期的に記録し、グラフ表示するツールです。

★フォームモジュール(Form1.vb)
Public Class Form1
    '' 事前に[Microsoft Chart Control 6.0 (SP4) (OLEDB)]コントロールをフォームに追加してください。
    '' <[Microsoft Chart Control 6.0 (SP4) (OLEDB)]コントロールの追加方法>
    '' [ツールボックス]の空いている部分でマウス右クリックし[アイテムの選択]を実行します。
    '' [ツールボックス アイテムの選択]画面の[COMコンポーネント]タブで、
    '' [Microsoft Chart Control 6.0 (SP4) (OLEDB) C:\WIN...\system32\mschrt20.ocx]を選択します。
    '' [ツールボックス]に追加された[Microsoft Chart Control 6.0 (SP4) (OLEDB)]コントロールをFormに追加します。

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' グラフの選択を許可するかどうか
        AxMSChart1.AllowSelections = False
        ' グラフの種類(このサンプルでは線グラフです)
        AxMSChart1.chartType = MSChart20Lib.VtChChartType.VtChChartType2dLine
        ' 表示するグラフの数
        AxMSChart1.ColumnCount = 1
        ' 表示する横軸の数(縦軸は自動のようです)
        AxMSChart1.RowCount = 50
        For j As Integer = 1 To AxMSChart1.RowCount
            ' 横軸指定
            AxMSChart1.Row = j
            ' 横軸のラベル設定
            AxMSChart1.RowLabel = j - 1
            For i As Integer = 1 To AxMSChart1.ColumnCount
                ' グラフを複数表示する時はグラフの番号を指定
                AxMSChart1.Column = i
                ' グラフの横軸に対する値(縦軸値)を設定
                AxMSChart1.Data = Math.Sin(j * Math.PI / 10)
            Next
        Next
    End Sub
End Class