python基础教程项目二之画幅好画


Posted in Python onApril 02, 2018

这是《python基础教程》中的第二个项目,关于python操作PDF。

涉及到的知识点

1、urllib的使用

2、reportlab库的使用

这个例子着实很简单,不过我发现在python里面可以直接在数组[]里面写for循环,真是越用越方便。

下面是代码:

from urllib import urlopen
from reportlab.graphics.shapes import *
from reportlab.graphics.charts.lineplots import LinePlot
from reportlab.graphics.charts.textlabels import Label
from reportlab.graphics import renderPDF

URL = 'http://www.swpc.noaa.gov/ftpdir/weekly/Predict.txt'
COMMENT_CHARS = '#:'

drawing = Drawing(400, 200)
data = []
for line in urlopen(URL).readlines():
 if not line.isspace() and not line[0] in COMMENT_CHARS:
  data.append([float(n) for n in line.split()])

pred = [row[2] for row in data]
high = [row[3] for row in data]
low = [row[4] for row in data]
times = [row[0] + row[1]/12.0 for row in data]
lp = LinePlot()
lp.x = 50
lp.y = 50
lp.height = 125
lp.width = 300
lp.data = [zip(times, pred),zip(times,high),zip(times, low)]
lp.lines[0].strokeColor = colors.blue
lp.lines[1].strokeColor = colors.red
lp.lines[2].strokeColor = colors.green

drawing.add(lp)
drawing.add(String(250,150, 'Sunspots',fontSize=14,fillColor=colors.red))

renderPDF.drawToFile(drawing, 'report3.pdf','Sunspots')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用PyFetion来发送短信的例子
Apr 22 Python
用matplotlib画等高线图详解
Dec 14 Python
python中判断文件编码的chardet(实例讲解)
Dec 21 Python
python实现在IDLE中输入多行的方法
Apr 19 Python
Python获取网段内ping通IP的方法
Jan 31 Python
Python中整数的缓存机制讲解
Feb 16 Python
详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
Apr 17 Python
Django框架实现的普通登录案例【使用POST方法】
May 15 Python
pandas基于时间序列的固定时间间隔求均值的方法
Jul 04 Python
Python assert语句的简单使用示例
Jul 28 Python
python中 _、__、__xx__()区别及使用场景
Jun 30 Python
python判断变量是否为列表的方法
Sep 17 Python
通过Python 接口使用OpenCV的方法
Apr 02 #Python
Python 3.x 安装opencv+opencv_contrib的操作方法
Apr 02 #Python
在python3.5中使用OpenCV的实例讲解
Apr 02 #Python
Python-OpenCV基本操作方法详解
Apr 02 #Python
浅谈Python Opencv中gamma变换的使用详解
Apr 02 #Python
opencv改变imshow窗口大小,窗口位置的方法
Apr 02 #Python
python opencv设置摄像头分辨率以及各个参数的方法
Apr 02 #Python
You might like
php不用正则验证真假身份证
2013/11/06 PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
2018/06/13 PHP
jquery 图片上传按比例预览插件集合
2011/05/28 Javascript
js跑马灯代码(自写)
2013/04/17 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
js实现网页抽奖实例
2015/08/05 Javascript
基于jQuery实现网页打印功能
2015/12/01 Javascript
jQuery实现伪分页的方法分享
2016/02/17 Javascript
JS判断form内所有表单是否为空的简单实例
2016/09/09 Javascript
一句jQuery代码实现返回顶部效果(简单实用)
2016/12/28 Javascript
VUE饿了么树形控件添加增删改功能的示例代码
2017/10/17 Javascript
浅谈使用mpvue开发小程序需要注意和了解的知识点
2018/05/23 Javascript
vue .sync修饰符的使用详解
2018/06/15 Javascript
Vue渲染过程浅析
2019/03/14 Javascript
在React中写一个Animation组件为组件进入和离开加上动画/过度效果
2019/06/24 Javascript
2020淘宝618理想生活列车自动领喵币js脚本的代码
2020/06/02 Javascript
vue 避免变量赋值后双向绑定的操作
2020/11/07 Javascript
vue 在服务器端直接修改请求的接口地址
2020/12/19 Vue.js
利用 Chrome Dev Tools 进行页面性能分析的步骤说明(前端性能优化)
2021/02/24 Javascript
Django网络框架之创建虚拟开发环境操作示例
2019/06/06 Python
Python大数据之网络爬虫的post请求、get请求区别实例分析
2019/11/16 Python
python使用rsa非对称加密过程解析
2019/12/28 Python
基于Python3.6中的OpenCV实现图片色彩空间的转换
2020/02/03 Python
分享一个页面平滑滚动小技巧(推荐)
2019/10/23 HTML / CSS
HTML5 新事件 小结
2009/07/16 HTML / CSS
打架检讨书400字
2014/01/17 职场文书
简短大学毕业感言
2014/01/18 职场文书
聚美优品励志广告词
2014/03/14 职场文书
师德师风个人反思
2014/04/28 职场文书
数据保密承诺书
2014/06/03 职场文书
2014党员干部四风问题对照检查材料思想汇报
2014/09/24 职场文书
会计岗位职责范本
2015/04/02 职场文书
教师节表彰会主持词
2015/07/06 职场文书
职工食堂管理制度
2015/08/06 职场文书
适合后台管理系统开发的12个前端框架(小结)
2021/06/29 Javascript
Mongo服务重启异常问题的处理方法
2021/07/01 MongoDB