5 .net c# asp.net data-visualization mschart
在我的Web应用程序中,我需要显示从数据表绑定的柱形图数据,我在我的统计图区域中的X轴上有3列,我需要在一侧显示col1,在第二列显示,并且需要为系列显示图例显示不同的颜色也来自数据表。
我需要像这样的我该怎么做,请任何人都可以帮助我该怎么做。
谢谢
假设您DataTable有以下列/类型:
Columns.Add("Month", typeof(DateTime));
Columns.Add("Charges", typeof(double));
Columns.Add("Payments", typeof(double));
Run Code Online (Sandbox Code Playgroud)
ASPX:
<asp:Chart ID="Chart1" runat="server" Height="400px" Width="600px">
<ChartAreas>
<asp:ChartArea Name="ChartArea1">
<AxisY>
<MajorGrid LineColor="DarkGray" LineDashStyle="Dot" />
<LabelStyle Format="C2" />
</AxisY>
<AxisX>
<MajorGrid LineColor="DarkGray" LineDashStyle="Dot" />
</AxisX>
</asp:ChartArea>
</ChartAreas>
<Legends>
<asp:Legend Name="Legend1">
</asp:Legend>
</Legends>
</asp:Chart>
Run Code Online (Sandbox Code Playgroud)
CS:
protected void Page_Load(object sender, EventArgs e)
{
foreach (DataRow r in dt.Rows)
{
Series s = new Series(string.Format("{0} {1}", ((DateTime)r["Month"]).ToString("MMM"), ((DateTime)r["Month"]).Year));
s.ChartType = SeriesChartType.Column;
s.Points.AddXY("Charges", new object[] { r["Charges"] });
s.Points.AddXY("Payments", new object[] { r["Payments"] });
Chart1.Series.Add(s);
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:假设您DataTable有以下列/类型:
Columns.Add("Month", typeof(string));
Columns.Add("Charges", typeof(double));
Columns.Add("Payments", typeof(double));
Run Code Online (Sandbox Code Playgroud)
或者
Columns.Add("Month");
Columns.Add("Charges");
Columns.Add("Payments");
Run Code Online (Sandbox Code Playgroud)
那么你应该将代码更改为:
protected void Page_Load(object sender, EventArgs e)
{
foreach (DataRow r in dt.Rows)
{
Series s = new Series((string)r["Month"]);
s.ChartType = SeriesChartType.Column;
s.Points.AddXY("Charges", new object[] { r["Charges"] });
s.Points.AddXY("Payments", new object[] { r["Payments"] });
Chart1.Series.Add(s);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3828 次 |
| 最近记录: |