VB Net图表系列:数据点消失导致系列禁用和启用后的行间隙

时间:2015-06-12 00:13:04

标签: vb.net charts

我有一个折线图,它是绑定到数据表的数据。它绘制得很好,但禁用并启用了一系列后数据点会消失。差距也会导致情节。

从列表框中禁用/启用该系列,以允许用户过滤到特定系列。

我试图在初始图表中和禁用/启用后插入空点但没有变化。

以下是一些代码段(我尝试发布图片但需要声誉为10):

' *** Initial plotting ***
With chrt.Series(index)
    .ChartType = DataVisualization.Charting.SeriesChartType.Line
    .Points.DataBind(dtParamOutput.Select("VEH_ID = " & vInfoItem.vehID & " AND PARAM_NAME = '" & paramList.Item(indexParam) & "'", "EVENT_TIME ASC", DataViewRowState.CurrentRows), "EVENT_TIME", "PARAM_VALUE", Nothing)
    .BorderWidth = 2

' *** Attempt at inserting empty data points with initial plotting ***
    If paramList.Item(indexParam).ToString = "Parameter1" Then
        ' *** Tried interval of Days, Hours, Minutes ***
        chrt.DataManipulator.InsertEmptyPoints(1, IntervalType.Hours, chrt.Series(index))
        .EmptyPointStyle.BorderWidth = 2
        ' *** Set to black dashed line to differentiate for now; prefer same as non-empty points ***
        .EmptyPointStyle.BorderColor = Color.Black
        .EmptyPointStyle.BorderDashStyle = ChartDashStyle.Dash
    End If
End With

' *** Disabling all series ***
For i As Integer = 0 To lbVeh.Items.Count - 1
    .Series(i).Enabled = False
Next

' *** Enable selected series based on user selection in list box ***
With chrt
    For Each selectedVeh In lbVeh.SelectedItems
        .Series(selectedVeh).Enabled = True
        ' *** Tried interval of Days, Hours, Minutes
        .DataManipulator.InsertEmptyPoints(1, IntervalType.Hours, selectedVeh)
        .Series(selectedTools).EmptyPointStyle.Color = Color.Black
    Next
End With

1 个答案:

答案 0 :(得分:0)

我想出了我自己造成的问题。数据绑定图表系列和数据表后,我需要系列中的最大值和最小值进行自动缩放和其他分析。

所以我使用以下内容来获取最小值和最大值。

chrt.Series(index).Points.Min
chrt.Series(index).Points.Max

我在图表中看到的是,在运行上述内容之后,我的所有最小值和最大值都在该系列中消失了。没有最小值和最大值,我的图中会出现间隙。我不认为获得最小值和最大值会将其从系列中删除。