悟生慧

 

如何在zedgraph中设置X坐标轴显示格式为日期时间型?转自:http://topic.csdn.net/u/20110508/14/0eb351c2-cacb-4ad2-b83b-f2ceb374f699.html

zedgraph相关链接:

http://download.csdn.net/tag/zedgraph
http://download.csdn.net/detail/wuyazhe/2591699
http://download.csdn.net/detail/wuyazhe/2588529

教程相关链接http://wenku.baidu.com/view/ffcf461dc281e53a5802ff9a.html

源码下载:1.http://download.csdn.net/download/liu5623/1864933 2.http://download.csdn.net/download/showz_y/741455

GUI绘制:http://www.cnblogs.com/ziyiFly/archive/2008/09/24/1297841.html

private void F_yjhgt_Load(object sender, EventArgs e)
  {
  //设置折线图名称和坐标轴名称

  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]);
  }
  //addcurve方法的几个参数分别代表了:1折线表示含义;2X轴数据;3Y轴数据;4折线颜色;5折线类型
  //此处需要注意,若两坐标轴均为数值型,则直接添加到addcurve方法中即可,本实例的X轴采用了text类型,所以使用addcurve方法时
  //X轴数据设置为空null,然后再在后面单独添加
  LineItem myCurve = this.zedGraphControl1.GraphPane.AddCurve("温度", null, szy, Color.Red, SymbolType.Diamond);
  this.zedGraphControl1.GraphPane.XAxis.Scale.TextLabels = szx;
  //刷新、重绘折线图
  this.zedGraphControl1.AxisChange();
  this.zedGraphControl1.Refresh();

  }

posted on 2011-11-08 15:08  悟生慧  阅读(2926)  评论(0编辑  收藏  举报

导航