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标准日志模块logging的使用方法
Nov 01 Python
python基于BeautifulSoup实现抓取网页指定内容的方法
Jul 09 Python
Flask框架Flask-Principal基本用法实例分析
Jul 23 Python
Python使用装饰器模拟用户登陆验证功能示例
Aug 24 Python
Python控制键盘鼠标pynput的详细用法
Jan 28 Python
Python OpenCV 调用摄像头并截图保存功能的实现代码
Jul 02 Python
深入了解python中元类的相关知识
Aug 29 Python
python 创建一维的0向量实例
Dec 02 Python
pandas中ix的使用详细讲解
Mar 09 Python
python 浮点数四舍五入需要注意的地方
Aug 18 Python
Pandas-DataFrame知识点汇总
Mar 16 Python
Python加密与解密模块hashlib与hmac
Jun 05 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
详细介绍:Apache+PHP+MySQL配置攻略
2006/09/05 PHP
PHP Directory 函数的详解
2013/03/07 PHP
php 目录遍历、删除 函数的使用介绍
2013/04/28 PHP
利用PHP fsockopen 模拟POST/GET传送数据的方法
2015/09/22 PHP
php自定义函数实现JS的escape的方法示例
2016/07/07 PHP
PHP静态延迟绑定和普通静态效率的对比
2017/10/20 PHP
关于Laravel-admin的基础用法总结和自定义model详解
2019/10/08 PHP
PHP+MySql实现一个简单的留言板
2020/07/19 PHP
调试Node.JS的辅助工具(NodeWatcher)
2012/01/04 Javascript
JS.getTextContent(element,preformatted)使用介绍
2013/09/21 Javascript
js简单实现用户注册信息的校验代码
2013/11/15 Javascript
让jQuery Mobile不显示讨厌loading界面的方法
2014/02/19 Javascript
javascript的创建多行字符串的7种方法
2014/04/29 Javascript
Jquery仿IGoogle实现可拖动窗口示例代码
2014/08/22 Javascript
jquery实现左右无缝轮播图
2020/07/31 Javascript
使用Web Uploader实现多文件上传
2016/06/08 Javascript
JavaScript DOM 对象深入了解
2016/07/20 Javascript
小程序开发基础之view视图容器
2018/08/21 Javascript
微信小程序实现跳转的几种方式总结(推荐)
2019/04/24 Javascript
[01:35]2018年度CS GO最佳战队-完美盛典
2018/12/17 DOTA
[42:24]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第一场 11.01
2020/11/02 DOTA
一个小示例告诉你Python语言的优雅之处
2014/07/04 Python
基于python编写的微博应用
2014/10/17 Python
Django的Modelforms用法简介
2019/07/27 Python
python调用百度API实现人脸识别
2020/11/17 Python
python mongo 向数据中的数组类型新增数据操作
2020/12/05 Python
python给list排序的简单方法
2020/12/10 Python
CSS3 Calc实现滚动条出现页面不跳动问题
2017/09/14 HTML / CSS
使用canvas压缩图片大小的方法示例
2019/08/02 HTML / CSS
PHP开发工程师面试问题集锦
2012/11/01 面试题
Final类有什么特点
2012/04/25 面试题
房地产推广策划方案
2014/05/19 职场文书
教师求职自荐书
2014/06/14 职场文书
文化苦旅读书笔记
2015/06/29 职场文书
python爬虫之selenium库的安装及使用教程
2021/05/23 Python
pandas中对文本类型数据的处理小结
2021/11/01 Python