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的unittest测试类代码实例
Dec 07 Python
Python之用户输入的实例
Jun 22 Python
python MNIST手写识别数据调用API的方法
Aug 08 Python
python tornado微信开发入门代码
Aug 24 Python
Django 多环境配置详解
May 14 Python
python3 pygame实现接小球游戏
May 14 Python
python 申请内存空间,用于创建多维数组的实例
Dec 02 Python
Django框架models使用group by详解
Mar 11 Python
详解selenium + chromedriver 被反爬的解决方法
Oct 28 Python
基于OpenCV的网络实时视频流传输的实现
Nov 15 Python
Python异常类型以及处理方法汇总
Jun 05 Python
Python中else的三种使用场景
Jun 16 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 if 想到的些问题
2008/03/22 PHP
PHP日期处理函数 整型日期格式
2011/01/12 PHP
php实现源代码加密的方法
2015/07/11 PHP
PHP基于PDO调用sqlserver存储过程通用方法【基于Yii框架】
2017/10/07 PHP
Javascript typeof 用法
2008/12/28 Javascript
javascript时区函数介绍
2012/09/14 Javascript
完美解决AJAX跨域问题
2013/11/01 Javascript
js的2种继承方式详解
2014/03/04 Javascript
简介JavaScript中用于处理正切的Math.tan()方法
2015/06/15 Javascript
jQuery实现的tab标签切换效果示例
2016/09/05 Javascript
nodejs搭建本地服务器并访问文件的方法
2017/03/03 NodeJs
JS组件系列之Gojs组件 前端图形化插件之利器
2017/11/29 Javascript
React Native之prop-types进行属性确认详解
2017/12/19 Javascript
基于 Vue.js 2.0 酷炫自适应背景视频登录页面实现方式
2018/01/17 Javascript
vue用elementui写form表单时,在label里添加空格操作
2020/08/13 Javascript
Django实现简单分页功能的方法详解
2017/12/05 Python
深入了解Python中pop和remove的使用方法
2018/01/09 Python
解决pandas read_csv 读取中文列标题文件报错的问题
2018/06/15 Python
Python基本socket通信控制操作示例
2019/01/30 Python
Python+OpenCV图像处理——实现直线检测
2020/10/23 Python
python使用正则表达式匹配txt特定字符串(有换行)
2020/12/09 Python
python爬虫beautifulsoup库使用操作教程全解(python爬虫基础入门)
2021/02/19 Python
Net-A-Porter美国官网:全球时尚奢侈品名站
2017/02/11 全球购物
寻找迷宫的一条出路,o通路;X:障碍
2016/07/10 面试题
什么是反射
2012/03/17 面试题
给领导的致歉信范文
2014/01/13 职场文书
优秀班集体获奖感言
2014/02/03 职场文书
党建工作经验交流材料
2014/05/25 职场文书
党员教师四风自我剖析材料
2014/09/30 职场文书
毕业实习证明(4篇)
2014/10/28 职场文书
收入及婚姻状况证明
2014/11/20 职场文书
入党政审材料范文
2014/12/24 职场文书
开展警示教育活动总结
2015/05/09 职场文书
爱护环境建议书
2015/09/14 职场文书
python实现图片批量压缩
2021/04/24 Python
MongoDB使用场景总结
2022/02/24 MongoDB