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解析xml中dom元素的方法
Mar 12 Python
python奇偶行分开存储实现代码
Mar 19 Python
基于python 二维数组及画图的实例详解
Apr 03 Python
win10下tensorflow和matplotlib安装教程
Sep 19 Python
关于阿里云oss获取sts凭证 app直传 python的实例
Aug 20 Python
python 3.6.7实现端口扫描器
Sep 04 Python
python进程池实现的多进程文件夹copy器完整示例
Nov 27 Python
Pytorch 使用opnecv读入图像由HWC转为BCHW格式方式
Jun 02 Python
numpy的Fancy Indexing和array比较详解
Jun 11 Python
Python tempfile模块生成临时文件和临时目录
Sep 30 Python
详解Python遍历列表时删除元素的正确做法
Jan 07 Python
利用Python将list列表写入文件并读取的方法汇总
Mar 25 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+MYSQL的文章管理系统(一)
2006/10/09 PHP
php feof用来识别文件末尾字符的方法
2010/08/01 PHP
PHP基于简单递归函数求一个数阶乘的方法示例
2017/04/26 PHP
使用jQuery的ajax功能实现的RSS Reader 代码
2009/09/03 Javascript
js对象的构造和继承实现代码
2010/12/05 Javascript
在JavaScript中监听IME键盘输入事件
2011/05/29 Javascript
原生js 秒表实现代码
2012/07/24 Javascript
javascript两种function的定义介绍及区别说明
2013/05/02 Javascript
jQuery filter函数使用方法
2014/05/19 Javascript
Node.js中使用Buffer编码、解码二进制数据详解
2014/08/16 Javascript
手机号码,密码正则验证
2014/09/04 Javascript
JS+CSS实现仿新浪微博搜索框的方法
2015/02/24 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
2017/06/09 Javascript
初探JavaScript 面向对象(推荐)
2017/09/03 Javascript
vue中阻止click事件冒泡,防止触发另一个事件的方法
2018/02/08 Javascript
解决vue-cli + webpack 新建项目出错的问题
2018/03/20 Javascript
JS控制GIF图片的停止与显示
2019/10/24 Javascript
vue实现顶部菜单栏
2020/11/08 Javascript
详解Django+Uwsgi+Nginx的生产环境部署
2018/06/25 Python
Python 多线程不加锁分块读取文件的方法
2018/12/11 Python
PyQt5实现五子棋游戏(人机对弈)
2020/03/24 Python
Django集成搜索引擎Elasticserach的方法示例
2019/06/04 Python
python调用matplotlib模块绘制柱状图
2019/10/18 Python
python绕过图片滑动验证码实现爬取PTA所有题目功能 附源码
2021/01/06 Python
Gap英国官网:Gap UK
2018/07/18 全球购物
意大利在线药房:shop-farmacia.it
2019/03/12 全球购物
使用C#编写创建一个线程的代码
2013/01/22 面试题
电子信息专业学生自荐信
2013/11/09 职场文书
监理员的岗位职责
2013/11/13 职场文书
中学生操行评语
2014/04/24 职场文书
人事经理岗位职责范本
2014/08/04 职场文书
自查自纠整改报告
2014/11/06 职场文书
2014年打非治违工作总结
2014/11/13 职场文书
2014年法务工作总结
2014/12/11 职场文书
详解nginx location指令
2022/01/18 Servers