python基础教程笔记——画幅好画(详解)

今天写一下基础教程里面的第二个项目,主要使用python来做一个pdf的图,比较简单。

首先我们需要安装用到的模块pip install reportlab即可。

书上是用urlopen从往上下了一个txt文件,然后打开处理一下得到数据,因为我从这个url路径没有获取到数据,所以直接写了一点数据在程序里。

urlopen比较简单,以后写爬虫也会经常用到,所以这里就不讲了,只单独讲讲reportlab模块。

#encoding:utf8
from reportlab.graphics.shapes import *
from reportlab.graphics.charts.lineplots import LinePlot
from reportlab.graphics import renderPDF

data = [((0,0),(1,1)) , ((5,5),(8,8)) ,((9,10),(11,12))]

drawing = Drawing(400,200)

lp = LinePlot()
#为LinePlot类设置一些相关属性
lp.x = 50
lp.y = 50
lp.height = 125
lp.width = 300
lp.data = data
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,‘myline‘,fontsize = 14,fillcolor = colors.red))
renderPDF.drawToFile(drawing, ‘lines.pdf‘ , ‘myline‘)

代码很简单,基本上看名字就可以猜出功能,实例了一个LinePlot类,然后给这个类设置一些属性,包括data数据,然后添加到drawing中即可,基本上没啥可讲的。

本次差不多就这样,喜欢的朋友,欢迎关注。

时间: 2024-10-11 17:08:17

python基础教程笔记——画幅好画(详解)的相关文章

Python基础之格式化输出函数format()功能详解

之前发过一篇文章:Python基础之常用格式化输出字符详解 但是呢,有时候我们需要用到多个%的时候,用这个就很不方便了,比如数错%数量或者一 一对应的时候... 这里补充一个字典方式的格式化输出字符的办法 print("double abc is %(a)s%(b)s%(c)s"%{'a':'aa','b':'bb','c':'cc'}) 这种方法呢,最大一个好处是字典格式可以和 json 文件互相转换,相当方便! format() 今天呢,在这里在给大家介绍一个比较先进的方法:for

python基础教程笔记-项目2-画幅好画-Day1

今天开始看项目二:画幅好画 项目中会用到图形生成包ReportLab,因此首先装好这个包:easy_install reportlab 从书中可以了解到,这个包主要用于作图. 比如说写字.画线等.执行代码: from reportlab.lib import colors from reportlab.graphics.shapes import Drawing,String,PolyLine from reportlab.graphics import renderPDF d = Drawin

python 基础教程 笔记 一

第一章 python 基础知识 1.1 数字和数学表达式 1.2 python 2.x 和python 3.x print的区别 1.3 python 2.x 和 python 3.x input 的区别 1.4 数学函数 1.5 input 和 raw_input 区别 第二章 列表和元组 第三章 使用字符串 1.1 数字和表达式 Python 默认的除法:整数/整数,无论是否整除都得到整数,不整除的截取小时部分 1 / 2 0 如果想要Python 执行普通的除法,可以之用浮点数来实现也可以

python基础教程笔记-项目2-画幅好画-Day2

本项目剩下部分主要使用量urllib和LinePlot. 什么是urllib? urllib模块提供的上层接口,使我们可以像读取本地文件一样读取www和ftp上的数据. 看代码: import urllib print urllib.urlopen('http://www.baidu.com').read() 执行效果: 重点需要注意的是urlopen函数: 关于urlopen的一些使用实例可参考链接: http://blog.csdn.net/leer168/article/details/8

python基础教程笔记 第1单元 && 第2单元

1.http://docs.python.org/dev/3.0/whatsnew/3.0.htmlpython-announce-listpython-help2.交互式编译器3.非整数除法 .1.>>> from__future__import divisionSyntaxError: invalid syntax.2.Linux -Qnew4.整数除法 // 就算是浮点数也会执行整除取余 2.75%0.5幂运算符 ** (pow(base,times[mod]))幂运算符比取反等级

Python基础教程笔记——使用字符串

使用字符串 Table of Contents 1 基本字符串操作 2 字符串格式化:精简版 2.1 用字符串格式化操作符 2.2 用string的Template格式化字符串 3 字符串格式化:完整版 3.1 转换说明符 3.2 简单转换 3.3 字段宽度和精度 3.4 符号,对齐和 0 填充 4 字符串方法 4.1 find 4.2 join 4.3 lower 4.4 replace 4.5 split 4.6 strip 4.7 translate 1 基本字符串操作 说明:字符串也是序

Python基础教程笔记——第1章

1.8 函数 pow(x,y) x^y abs(x)          取数的绝对值 round(x)   会把浮点数四舍五入为最接近的整数 floor(x)     向下取整的函数,但是需要先import  math模块 1.9 模块 用import导入模块来扩展Python的功能 (1)import 模块    然后用法:模块.函数 (2)from 模块 import 函数     然后用法:函数 (3)使用变量来赋值,然后使用函数,,,如:foo=math.floor()   foo(12

Python基础教程笔记 第二章

本章的名字虽然叫列表和元组,但是本章讲的最多的是列表,元祖指讲了很少的一部分.因为元组和列表很多方面都是一样的. 列表和元组的区别:列表可以被修改,元祖不可以被修改. python包含的6种内建序列:列表.元组.字符串.Unicode字符串.buffer对象.xrange对象. 内建函数返回的是元组,因为元组是不可以被修改的. 列表的形式是[] ,元素之间通过逗号分隔. 序列(例如列表和元组)和映射(例如字典)是两类主要的容器.序列中的每个元素都有自己编号,而映射中的每个元素则有一个名字(也称为

Python基础教程笔记——第2章:列表和元组

python shell 里重复上一次的命令:Alt+p 2.3 列表:Python的苦力 (1)list函数 (2)列表赋值,不蹦蹦为一个元素不存在的位置赋值 (3)删除元素,del name[1] (4)分片赋值,name[2:]=list('ar') 列表方法:对象.方法(参数) (1)a.append(6)   在列表末尾添加新的对象 (2)a.count("dh")   统计元素在列表中出现的次数 (3)a.extend(b)   可以在列表的末尾一次性追加多个值 (4)a.