请用vb.net做一个数值随时间变化的chart案例,即横坐标为时间,纵坐标为数值,,一定要美观,请吧代码写出来
时间: 2023-03-24 10:01:17 浏览: 72
很高兴回答您的问题!以下是一个使用VB.NET制作动态时间变化的图表的示例代码:
```
Public Class Form1
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
'每秒更新图表数据
Chart1.Series(0).Points.AddXY(DateTime.Now, Math.Sin(DateTime.Now.Second))
Chart1.ChartAreas(0).AxisX.Minimum = DateTime.Now.AddSeconds(-30).ToOADate()
Chart1.ChartAreas(0).AxisX.Maximum = DateTime.Now.ToOADate()
Chart1.Invalidate()
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'初始化图表
Chart1.Series.Clear()
Chart1.Series.Add("动态数据")
Chart1.Series(0).ChartType = DataVisualization.Charting.SeriesChartType.Line
Chart1.ChartAreas(0).AxisX.LabelStyle.Format = "HH:mm:ss"
Chart1.ChartAreas(0).AxisY.Minimum = -1.2
Chart1.ChartAreas(0).AxisY.Maximum = 1.2
Chart1.ChartAreas(0).AxisY.Interval = 0.2
Chart1.ChartAreas(0).AxisX.ScaleView.Zoomable = True
Chart1.ChartAreas(0).CursorX.AutoScroll = True
Chart1.ChartAreas(0).CursorX.IsUserSelectionEnabled = True
Timer1.Enabled = True
End Sub
End Class
```
此代码使用定时器每秒更新图表数据。图表中的X轴表示时间,Y轴表示数值。示例中使用正弦函数来生成动态的数据。您可以根据需要自行替换数据生成的方法。图表会自动滚动并缩放到可见范围。希望这个示例能够帮助您实现您的需求。