c# chart绘图 dataset

图片说明

chart1.datasource=databindsource(datatable,"week"),这样写报错, 请问如何实现将week这一列作为横坐标, 急 各位大神在线等

2个回答

databindsource不是一个库函数,你怎么实现的,代码贴出来才知道。

//控件内容全部使用动态生成
private void FrmChart_Load(object sender, EventArgs e)
{
//获取数据源
dt = Helper.GetDataSet("select o_order_no,o_order_money from t_order", connString).Tables[0];
//用指定的dataTable初始化dataView
DataView dv = new DataView(dt);
//需要显示的条目数,匹配数据中的列
Series[] series = new Series[dt.Columns.Count - 1];
//实例化一个标题
Title title = new Title();

//将标题添加到控件
this.chart1.Titles.Add(title);
//实例化一个图表显示的区域
ChartArea chartArea = new ChartArea();
//设置名称
chartArea.Name = "chartArea1";
//将区域添加到控件
this.chart1.ChartAreas.Add(chartArea);
//图表图例,显示在右上角的标识,设置只用一个Legend来显示(可以包含多个列的列名)
Legend legend = new Legend();
//图例名称
legend.Name = "legend1";
//添加到控件
this.chart1.Legends.Add(legend);
//循环需要显示的条目数,并设置相应的属性
for (int i = 0; i < dt.Columns.Count - 1; i++)
{
series[i] = new Series();//实例化一个图表序列
series[i].ChartArea = "chartArea1";//设置ChartArea属性
series[i].Legend = "legend1";//设置Legend属性
this.chart1.Series.Add(series[i]);//添加到Chart的Series集合
}
//循环绑定数据
for (int i = 0; i < this.chart1.Series.Count; i++)
{
//绑定不同Series的X轴与Y轴的值
chart1.Series[i].Points.DataBindXY(dv, dt.Columns[0].ColumnName, dv, dt.Columns[i + 1].ColumnName);
chart1.Series[i].Label = "#VAL";//顶部显示数字
chart1.Series[i].LegendText = dt.Columns[i + 1].ColumnName;//设置图表图例名称
}
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问