苦尽甘来:研究在TeeChart中画曲线图

来源:互联网 发布:手机淘宝账号怎么登陆 编辑:程序博客网 时间:2024/05/17 01:09

 将一个带有数值的二维表格转化成曲线图是再简单不过的事情了,EXCEL中点几下就能够实现。但是刚刚学用TeeChart却实在是头疼了一阵。个人觉得TeeChart的功能虽然很强大,但是API接口设计得过于烦琐,而且帮助文档实在太糟糕了,短短的一句话,什么都没说清楚。我就这样一个一个猜啊猜啊,终于苦尽甘来。

    介绍下过程,或许对大家有帮助:环境为vs2005, TeeChart 3.2。
    画曲线的目的是想将数据库里面的一个汇总结果用曲线显示出来,构造的伪数据如下:


        DataTable tbl = new DataTable();
        tbl.Columns.Add("time", typeof(string));
        tbl.Columns.Add("value", typeof(int));
        tbl.Rows.Add(new object[] ...{ "2008-01-01", 100 });
        tbl.Rows.Add(new object[] ...{ "2008-01-02", 23 });
        tbl.Rows.Add(new object[] ...{ "2008-01-03", 456 });
        tbl.Rows.Add(new object[] ...{ "2008-01-04", 78 });
        tbl.Rows.Add(new object[] ...{ "2008-01-05", 123 });
        tbl.Rows.Add(new object[] ...{ "2008-01-06", 345 });
        tbl.Rows.Add(new object[] ...{ "2008-01-07", 23 });
        tbl.Rows.Add(new object[] ...{ "2008-01-08", 90 });
        tbl.Rows.Add(new object[] ...{ "2008-01-09", 342 });
 1、建一个aspx文件line.aspx;
2、在设计视图中拖进去一个控件;
3、在属性窗口的杂项中,将GetChartFile设置成GetChart.aspx(默认)
     将TempChart属性设置成Session
     将TeeChart安装目录下的例子文件夹中,将GetChart.aspx拷贝到当前的工程目录下。(注意:这个文件要设置好,不然图片显示一个叉叉,在这里花了好多时间)
4、打开line.aspx.cs:
     加入名称空间using Steema.TeeChart.Styles;
     进入Page_Load()方法:
     新增一个曲线的对象:


Line line= new Line(WebChart1.Chart);    将以上的伪造DataTable的代码也复制在这里。
5、尝试了很久,找到了第一种画曲线图的方法:


foreach (DataRow r in tbl.Rows)
...{
    line.Add(Convert.ToDouble(r[1]), r[0] as string);
}6、感觉太原始了,应该还有更好的办法!!!继续翻API手册,不同的写代码测试,终于找到:


line.YValues.DataMember = "value";
line.LabelMember = "time";
line.DataSource = tbl;
   我觉得,做.NET,可以没有Visual Stuio,但是绝对不能没有MSDN。好的参考资料,让使用者快速学会怎么使用,真的是太重要了!!!
 

文章出处:http://www.diybl.com/course/4_webprogram/asp.net/netjs/200847/108712.html

原创粉丝点击