日期:2014-05-17  浏览次数:21050 次

如何在WinForm中利用ZedGraph读取SQL Server中的数据绘制图表?
我的SQL Server数据库中存有时间的温度信息。想利用ZedGraph将这些数据绘制成时间-温度曲线。我该怎么编程?刚接触ZedGraph,完全不会呀!
如果没时间帮忙编程的话给推荐几个类似的教程也可以!但是请不要是与数据库完全没关系的。
麻烦啦!
ZedGraph SQL?Server 读取数据绘制曲线

------解决方案--------------------
以前做过类似的,这是我当时测试用的程序,改改就能用
private void F_yjhgt_Load(object sender, EventArgs e)//在form_load里进行设置
        {
            //设置折线图名称和坐标轴名称

            this.zedGraphControl1.GraphPane.Title.Text = "烘干塔温度折线图";
            this.zedGraphControl1.GraphPane.XAxis.Title.Text = "时间";
            this.zedGraphControl1.GraphPane.YAxis.Title.Text = "温度";
            //如果坐标轴标度不想使用数值,而是使用文本,需要设置坐标轴类型为text
            this.zedGraphControl1.GraphPane.XAxis.Type = AxisType.Text;
            //定义一个datetime类型的变量a,用来接收数据表中日期时间类型的数据
            DateTime a;
            string[] szx = new string[10];
            double [] szy = new double [10];
            //若想从数据表的所有数据中找出最近的十条数据,可以用top关键字,该关键字的功能是将排序查询结果的前n条记录找出来
            MyDS_Grid = MyDataClass.getDataSet("Select top 10 * from tb_zzt order by pczsj desc", "tb_zzt");

            //若想向统计图中输出显示结果,需要注意上一步排序结果是降序,而显示时应该是升序,所以此处向数组赋值时应该反序
            for (int i = 9; i >= 0; i--)
            {
                a = (DateTime)MyDS_Grid.Tables[0].Rows[i][0];
                szx[-(i-9)] = a.ToString("hh:mm:ss");
                szy[-(i-9)] = Convert.ToDouble(MyDS_Grid.Tables[0].Rows[i][8]);
        &n