我从数据库中检索了几个大小各异的数据表。这 2 个中的一个只是一个示例。
See the structure here!
I managed to create the 2 different series and have them show up on the legend.
我的问题是如何将该数据绑定到相应的系列。
系列名称是从 doman_namn 列创建的,系列数量是从保存唯一 URL 数量的“antal”列创建的。
QUESTION如何将 ADDY 和 ADDX 绑定到图表现在失败了。
这是我到目前为止的代码...
Chart1.DataSource = dt;
int amountofrows = Convert.ToInt32(dt.Rows[0]["antal"].ToString());
for (int i = 0; i < amountofrows; i++)
{
string serieName = dt.Rows[i]["doman_namn"].ToString();
Chart1.Series.Add(serieName);
Chart1.Series[i].ChartType = SeriesChartType.Line;
foreach(DataRow dr in dt.Rows)
{
try
{
if (String.Equals(serieName,dr["doman_namn"].ToString(), StringComparison.Ordinal))
{
Chart1.Series[serieName].Points.AddY(Convert.ToDouble(dr["ranking_position"]));
Chart1.Series[serieName].Points.AddY(Convert.ToDouble(dr["ranking_date"]));
}
}
catch (Exception)
{
throw new InvalidOperationException("Failed when adding points");
}
}
}
Chart1.DataBind();
Chart1.Visible = true;
在 GREGOR 的帮助下编写代码
for (int i = 0; i < amountofrows; i++)
{
string serieName = dt.Rows[i]["doman_namn"].ToString();
Chart1.Series.Add(serieName);
Chart1.Series[i].ChartType = SeriesChartType.Line;
Chart1.Series[serieName].XValueMember = "ranking_date";
Chart1.Series[serieName].YValueMembers = "ranking_position";
}
Chart1.DataBind();
看一下我的示例之一,如何使用代码将 DataTable 绑定到 MS Chart:
如何从控制台应用程序基于数据表绘制图表? https://stackoverflow.com/questions/12553435/how-to-draw-chart-based-on-datatable-from-console-application/12553474#12553474
希望您会发现它很有用。
以下是要点:
//setting the source from datatable....
chart.DataSource = dt;
//setting XValueMember for first serie (Name is column inside datasource)...
serie1.XValueMember = "ranking_position";
//setting YValueMembers...
serie1.YValueMembers = "ranking_date";
这是绑定多个系列的另一个链接:
http://dotnetslackers.com/articles/net/Binding-a-Microsoft-Chart-with-a-Dataset.aspx http://dotnetslackers.com/articles/net/Binding-a-Microsoft-Chart-with-a-Dataset.aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)