您的位置:首页 > 其它

超级强悍开源图表控件ZedGraph,请高手指教数据绑定问题!!!

2013-03-13 20:55 459 查看
这几天一直在纠结这个问题,为什么给进去的数据时一样的,画出来的图却有问题,我刚刚接触ZEDgraph请高手指点

源码如下:

private void Form1_Load(object sender, EventArgs e)
{
try
{
ZedGraph.GraphPane gp = zedGraphControl1.GraphPane;
gp.Title.Text = "销售统计"; //圖表的表頭
gp.XAxis.Title.Text = "時間"; //X軸的名稱
gp.YAxis.Title.Text = "金額"; //Y軸的名稱

DataSet ds = GetDataSet();
ZedGraph.DataSourcePointList dsp = new ZedGraph.DataSourcePointList();
dsp.DataSource = ds.Tables["book"];
dsp.XDataMember = "Monthly";
dsp.YDataMember = "Money";
ZedGraph.BarItem bi = gp.AddBar("Test", dsp, System.Drawing.Color.Red);

PointPairList list1 = new PointPairList();
for (int i = 0; i < 15; i++)
{
double x = (double)i + 2;
double y1 = 15 + Math.Sin((double)i * 0.99);
list1.Add(x, y1);
}
LineItem _lineitem2 = gp.AddCurve(gp.Title.Text, list1, Color.Blue, SymbolType.None);
gp.AxisChange();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}

private DataSet GetDataSet()
{
DataTable dt = new DataTable("book");
dt.Columns.Add("Monthly");
dt.Columns.Add("Money");
for (int i = 1; i < 15; i++)
{
DataRow dr = dt.NewRow();
dr["Monthly"] = (double)i + 2;
dr["Money"] = 15 + Math.Sin((double)i * 0.99);
dt.Rows.Add(dr);
}
DataSet ds = new DataSet();
ds.Tables.Add(dt);
return ds;
}


  但是绘制出来的图像如下:



问题:

DataSet ds = GetDataSet();
ZedGraph.DataSourcePointList dsp = new ZedGraph.DataSourcePointList();
dsp.DataSource = ds.Tables["book"];
dsp.XDataMember = "Monthly";
dsp.YDataMember = "Money";
我获取到数据集后,讲数据集中的book表的Monthly列赋给x轴,money赋给y轴,为什么绘制出来的柱状图却是y=x的形式,
而不是 dr["Money"] = 15 + Math.Sin((double)i * 0.99);
希望用过zedgraph的高手指教。。。。
上图中柱状图和折线图的数据是一样的,为什么绘制出来的结果却不同呢?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: