Chinaunix首页 | 论坛 | 博客
  • 博客访问: 157219
  • 博文数量: 33
  • 博客积分: 2057
  • 博客等级: 大尉
  • 技术积分: 430
  • 用 户 组: 普通用户
  • 注册时间: 2007-11-19 16:37
文章分类
文章存档

2013年(2)

2012年(23)

2011年(8)

分类: Python/Ruby

2012-11-16 22:47:29


点击(此处)折叠或打开

  1. #coding=utf-8

  2. from pylab import *
  3. from datetime import datetime, timedelta #必须在pylab的import后面,覆盖pylab的datetime,否则会被覆盖
  4. import matplotlib.dates as mdate

  5. import pyExcelerator
  6. import cPickle
  7. from config import *


  8. mpl.rcParams['font.sans-serif'] = ['SimHei']

  9. ss = ['b-','y-','r--','y--','g-','k+-','g--','r-','k-','r+-','k:','g:','b--','g+-','r*-','k*-']

  10. zero = datetime(1899,12,30)

  11. f=open('pages','rb')
  12. pages = cPickle.load(f)


  13. for km in kms:
  14.     for dtu in km.dtus:
  15.         for position in dtu.ps:
  16.             style = 0
  17.             for tm in position.t_modules:
  18.                 for sensor in tm.sensors:
  19.                     try: datas = pages[(dtu.n,tm.n,sensor.p)]
  20.                     except KeyError: print (dtu.n,tm.n,sensor.p),u'缺少数据'
  21.                     datas.sort()
  22.                     xs = map(lambda i:zero+timedelta(days=i[0]),datas)
  23.                     ys = map(lambda i:i[1],datas)
  24.                     ax = gca()
  25.                     ax.plot_date(xs, ys, ss[style],linewidth=0.5,label=u'%sm深' %sensor.deep)
  26.                     style += 1
  27.             ax.xaxis.set_major_formatter(mdate.DateFormatter('%y-%m-%d')) #x轴上的label格式为"年-月-日",其中年取后两位
  28.             xlabels = ax.get_xticklabels()
  29.             for xl in xlabels: xl.set_rotation(15) #把x轴上的label旋转15度,以免太密集时有重叠
  30.             xlabel(u'日期(年-月-日)')
  31.             ylabel(u'温度(摄氏度)')
  32.             title(km.s+position.s)
  33.             legend(loc=3,prop={'size':10})
  34.             #show()
  35.             savefig('D:/root/pics/'+km.s+position.s+'.png')
  36.             clf()

阅读(4215) | 评论(0) | 转发(0) |
0

上一篇:python调用vba宏

下一篇:mod_python 上传文件

给主人留下些什么吧!~~