如何将DataTable绑定到多个图表系列

时间:2017-03-01 11:43:16

标签: asp.net .net vb.net charts mschart

我正在使用VS 2015,我想显示一个我创建的数据表作为图表。

数据表看起来像这样。

Data table view

之前我还没有真正使用过图表,我尝试了一些在线发现的示例/教程,但我没有到达任何地方。

我想要一个折线图,其中x轴为时间戳,y为值,每个标签名称为3行(在本例中)。

我已使用

将控件添加到页面中
<asp:Chart ID="Chart1" runat="server">
<Series>
<asp:Series Name="Series1"></asp:Series>
</Series>
<ChartAreas>
<asp:ChartArea Name="ChartArea1"></asp:ChartArea>
</ChartAreas>
</asp:Chart>

到目前为止,这是我在VB中所拥有的内容,但我知道它可能没有足够/正确的信息来显示图表。

With Chart1.Series(0)

    .Points.DataBind(trendTagData, "timestamp", "Value", Nothing)

End With

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

VB真的不是我的事,但这是一个单行

    Chart1.DataBindCrossTable(dt.DefaultView, "tagname", "timestamp", "value", "");

enter image description here

修改

您可能还需要在致电DataBindCrossTable之后执行此操作,以获得Line图表类型:

        Chart1.Series["tag1"].ChartType = SeriesChartType.Line;
        Chart1.Series["tag2"].ChartType = SeriesChartType.Line;
        Chart1.Series["tag3"].ChartType = SeriesChartType.Line;

OR

如果您不知道表格中有多少个标签名称,请执行以下操作:

        foreach (Series s in Chart1.Series)
            s.ChartType = SeriesChartType.Line;

另请注意,您可以从ASPX标记中删除Series1