zoukankan      html  css  js  c++  java
  • 超级强悍开源图表控件ZedGraph,请高手指教数据绑定问题!!!

    这几天一直在纠结这个问题,为什么给进去的数据时一样的,画出来的图却有问题,我刚刚接触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的高手指教。。。。
    上图中柱状图和折线图的数据是一样的,为什么绘制出来的结果却不同呢?
  • 相关阅读:
    第一个ExtJS练习(添加用户面板)
    利用高德地图通过给定坐标点画带箭头方向的路径
    安装myeclipse2015 stable 3.0破解之后发生出现SECURITY ALERT:iNTEGRITY CHECK ERROR然后闪退解决方案
    当你的SSM项目中的springmvc.xml发生第一行错误解决方案
    新建maven项目遇到Select an Archetype时没有maven-archetype-webapp处理方法
    XML、HTML、JSON对比
    Mac配置apache2.4.25服务器
    使用HTTP协议访问网络
    android数据持久化存储
    常用git命令
  • 原文地址:https://www.cnblogs.com/tmall/p/2958250.html
Copyright © 2011-2022 走看看