VB - 从datagridview显示图表

时间:2016-07-11 11:10:07

标签: vb.net datagridview charts datagrid linechart

我愿意显示一个基于datagridview的折线图,但我希望不仅能显示所有x值,而且只显示每个5或10个值,例如我有温度记录我的房间在10天内每小时一次,所以我得到了24x10 = 240的数据,但我希望能够只显示图表上显示的每3小时一次的值。另一个前。我有1-100的数据我想只显示每个数据5,10,15,20的图表,...怎么可能呢?

   Chart1.Series(0).ChartType = DataVisualization.Charting.SeriesChartType.Line
    Chart1.Series(0).Points.Clear()
    For Count As Integer = 0 To dataGridView1.Rows.Count - 1
        Chart1.Series(0).Points.AddXY(dataGridView1.Item(0, Count).Value, dataGridView1.Item(2, Count).Value)
    Next

上面的代码已成功显示正常折线图。

1 个答案:

答案 0 :(得分:0)

使用vb.net中的Mod跳过您不想在循环中绘制的点

Dim divisor = 3
Chart1.Series(0).ChartType = DataVisualization.Charting.SeriesChartType.Line
Chart1.Series(0).Points.Clear()
For count As Integer = 0 To DataGridView1.Rows.Count - 1
    If (DataGridView1.Item(0, count).Value Mod divisor = 0) Then
        Chart1.Series(0).Points.AddXY(DataGridView1.Item(0, count).Value, DataGridView1.Item(2, count).Value)
    End If
Next count

这会跳过所有x值,其中3不会没有余数。您可以将Dim divisor = 3更改为Dim divisor = 5,以跳过所有x值,其中5不会没有余数等等。