1,451
社区成员
发帖
与我相关
我的任务
分享
Imports System.Windows.Forms.DataVisualization.Charting
Public Class 绘制曲线
Dim DataMain As New DataTable
Dim Column As DataColumn
Dim ColumnCount As Integer
Dim Series(256) As Series
Dim ColumnName(256) As String
Dim maxlen As Integer
Private grid As DataGridView
Private DataGridView1 As Object
Private Sub iniChart()
Chart1.Series.Clear()
Timer1.Enabled = False
For i As Integer = 1 To ColumnCount Step 1
Chart1.Series.Add(Series(i))
Series(i).YValueMembers = "混合流量"
Series(i).XValueMember = "测试日期"
Next
Timer1.Enabled = True
End Sub
Private Sub 绘制曲线_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.grid = grid
Call iniChart()
Chart1.DataSource = DataMain 'dt作为chart1的数据源
Chart1.Series.Clear()
Chart1.Legends.Clear()
Chart1.ChartAreas.Clear()
Chart1.ChartAreas.Add("")
For i As Integer = 0 To 100
Series(i) = New Series
Next
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Chart1.ChartAreas.Clear()
Dim ChartAreas1 As New ChartArea("混合流量") '定义新的ChartArea
Chart1.ChartAreas.Add(ChartAreas1) '将新定义的ChartArea加入Chart1
Chart1.ChartAreas(0).AxisX.Title = "测试日期" '设置ChartArea里坐标轴标题
Chart1.ChartAreas(0).AxisY.Title = "混合流量"
Chart1.Series.Clear()
Dim series1 As New Series("混合流量")
series1.ChartType = SeriesChartType.Line '设置Series的绘图类型
series1.IsXValueIndexed = True
series1.XValueType = ChartValueType.DateTime
Chart1.Series.Add(series1)
Dim i, l(i) As Integer
For i = 1 To maxlen
Chart1.Series("混合流量").Points.AddXY(i, l(i)) '为这个Series加数据点
Next
Me.grid = grid
Chart1.Visible = False
Dim dt As DataTable = New DataTable
dt.Columns.Add("测试日期", GetType(System.Single))
dt.Columns.Add("混合流量", GetType(System.Single))
For i = 1 To DataGridView1.Rows.Count - 1
dt.Rows.Add(New Object() {DataGridView1.Rows(i).Cells(1).Value.ToString(), DataGridView1.Rows(i).Cells(5).Value, DataGridView1.Rows(i).Cells(6).Value, DataGridView1.Rows(i).Cells(7).Value})
Next
Me.Chart1.DataSource = dt
End Sub