C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■83343 / )  Re[3]: ChartのX軸に日・時・分を指定し表示
□投稿者/ KY (6回)-(2017/03/17(Fri) 20:49:06)
遅くなりましたがサンプル載せますのでよろしくお願いします。

このサンプルでもそうですが、X軸を自動で表示をしますとそのラベルも適当に表示がされてしまいます。
それをごく一般なグラフ(チャート)にもありますように、任意での間隔で・・、或いは指定した数値のみ、その位置に表示がされるようにならないものかと思っています。

何故なら例えば 144、164、184 などと中途半端な表示になると見にくいからです。

Public Class Form1
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    End Sub

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        Dim dat As DataTable = New DataTable
        With dat.Columns
            .Add("年月日時分", GetType(Integer))    ' X軸 <---- 実際は"2017/03/16 16:31"、"2017/03/16 16:32"、・・・ などの"年月日時分"です。 
            .Add("数量", GetType(Integer))          ' Y軸
        End With

        Dim cRandom As New System.Random()                     ' Random クラスの新しいインスタンスを生成する
        Dim iResult1 As Integer = cRandom.Next(13, 186)       ' 実際は"年月日時分"ですが分かり易く 13以上 186 未満の乱数を取得し開始を決めている
        For i = iResult1 To iResult1 + 50
            Dim iResult2 As Integer = cRandom.Next(1, 100)     ' "数量"   (1 以上 100 未満の乱数を取得する)
            dat.Rows.Add(i, iResult2)
        Next

        Chart1.DataSource = dat
        Chart1.Series.Clear()
        Dim oresen = Chart1.Series.Add("棒グラフ")
        With oresen
            .ChartType = DataVisualization.Charting.SeriesChartType.Column
            .XValueMember = "年月日時分"     ' X軸
            .YValueMembers = "数量"          ' Y軸
            .IsVisibleInLegend = False
        End With
    End Sub
End Class

返信 編集キー/


管理者用

- Child Tree -