Wednesday, July 11, 2018

VB.NET Create Graph

วันนี้ได้ลองโจทย์ใหม่ที่ไม่เคยทำมาก่อนในชีวิต   กราฟเส้น (โอวววว  ไม่เคยอะ ทำไงดีหว่า)
นั่ง งม ทั้งวันจนกระทั่ง  แอ่น แอน แอ๊น.......  สำเร็จ วุ้ย  ถถถถถถถ  เรานี่มั่วเก่งเหมือนกัน

Imports System.Windows.Forms.DataVisualization.Charting
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Chart1.Titles.Clear()
        With Chart1
            .Series.Clear()
            .Series.Add("Actual")
            .Series.Add("Min")
            .Series.Add("Max")
        End With


        Dim vMin As Double = 1.0
        Dim vMax As Double = 20.0
                For i As Integer = 1 To 10
            Dim r As Random = New Random
            Dim val As Integer = r.Next(0, 25)
            With Chart1
                .Series("Actual").Points.AddXY(i, val)
                .Series("Min").Points.AddXY(i, vMin)
                .Series("Max").Points.AddXY(i, vMax)
            End With
        Next
        With Chart1.Series("Actual")
            .ChartType = SeriesChartType.Line
            .Color = Color.Blue  'Color.FromArgb(139, 162, 178)
            .BorderWidth = 3
            .MarkerStyle = MarkerStyle.Circle
            .MarkerSize = 10
            .MarkerColor = Color.Blue 'Color.FromArgb(181, 201, 205)
            .MarkerBorderColor = Color.White 'Color.FromArgb(139, 162, 178)

        End With

        With Chart1.Series("Min")
            .ChartType = SeriesChartType.Line
            .Color = Color.Red ' Color.FromArgb(139, 162, 178)
        End With

        With Chart1.Series("Max")
            .ChartType = SeriesChartType.Line
            .Color = Color.Red ' Color.FromArgb(139, 162, 178)
        End With
        With Chart1.ChartAreas(0)
            .AxisY.Minimum = vMin
            .AxisY.Maximum = vMax
            .AxisY.Interval = 2 'Set Scale
            .AxisX.MajorGrid.LineDashStyle = DataVisualization.Charting.ChartDashStyle.NotSet
            .AxisX.Minimum = 0
            .AxisX.Interval = 1
            ' .AxisY2.MajorGrid.LineDashStyle = ChartDashStyle.NotSet
            .AxisY.MajorGrid.LineDashStyle = ChartDashStyle.NotSet

        End With
        '#########  END Chart1 ##################
        Chart1.Titles.Add(New Title("Test Title", Docking.Top, New Font("Verdana", 8.0F, FontStyle.Bold), Color.Blue))


    End Sub