首页 后端开发 Python教程 python基础教程项目二之画幅好画

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

Apr 03, 2018 am 09:19 AM
python 画幅 项目

这篇文章主要为大家详细介绍了python基础教程项目二之画幅好画,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

这是《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基础教程项目二之画幅好画的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Laravel 教程
1605
29
PHP教程
1511
276
在Python中调试内存泄漏的常见策略是什么? 在Python中调试内存泄漏的常见策略是什么? Aug 06, 2025 pm 01:43 PM

Usetracemalloctotrackmemoryallocationsandidentifyhigh-memorylines;2.Monitorobjectcountswithgcandobjgraphtodetectgrowingobjecttypes;3.Inspectreferencecyclesandlong-livedreferencesusingobjgraph.show_backrefsandcheckforuncollectedcycles;4.Usememory_prof

一文了解什么是加密货币交易中的情绪分析? 一文了解什么是加密货币交易中的情绪分析? Aug 14, 2025 am 11:15 AM

目录什么是加密货币交易中的情绪分析?为什么情绪分析在加密货币投资中很重要情绪数据的关键来源a.社交媒体平台b.新闻媒体c.市场指标情绪分析的工具和技术情绪分析中常用的工具:采用的技术:将情感分析整合到交易策略中交易者如何使用它:策略示例:假设BTC交易场景场景设置:情感信号:交易者的解读:决策:结果:情感分析的局限性和风险利用情感进行更智能的加密货币交易理解市场情绪在加密货币交易中变得越来越重要。最近一项2025年的研究由Hamid

如何使用Python自动化从Excel到Web表单的数据输入? 如何使用Python自动化从Excel到Web表单的数据输入? Aug 12, 2025 am 02:39 AM

使用Python自动化将Excel数据填入网页表单的方法是:先用pandas读取Excel数据,再用Selenium控制浏览器自动填写并提交表单;具体步骤包括安装pandas、openpyxl和Selenium库,下载对应浏览器驱动,用pandas读取data.xlsx文件中的Name、Email、Phone等字段,通过Selenium启动浏览器打开目标网页,定位表单元素并逐行填入数据,使用WebDriverWait处理动态加载内容,添加异常处理和延迟确保稳定性,最后提交表单并循环处理所有数据行

如何使用Python中的索引枚举循环 如何使用Python中的索引枚举循环 Aug 11, 2025 pm 01:14 PM

当需要遍历序列并访问索引时,应使用enumerate()函数,1.enumerate()自动提供索引和值,比range(len(sequence))更简洁;2.可通过start参数指定起始索引,如start=1实现1-based计数;3.可结合条件逻辑使用,如跳过首项、限制循环次数或格式化输出;4.适用于列表、字符串、元组等任意可迭代对象,并支持元素解包;5.提升代码可读性,避免手动管理计数器,减少错误。

如何在Python中将文件和目录从一个位置复制到另一个位置 如何在Python中将文件和目录从一个位置复制到另一个位置 Aug 11, 2025 pm 06:11 PM

要复制文件和目录,Python的shutil模块提供了高效且安全的方法。1.使用shutil.copy()或shutil.copy2()复制单个文件,后者保留元数据;2.使用shutil.copytree()递归复制整个目录,目标目录不能预先存在,但可通过dirs_exist_ok=True(Python3.8 )允许目标存在;3.可结合ignore参数和shutil.ignore_patterns()或自定义函数过滤特定文件;4.复制仅目录结构需用os.walk()和os.makedirs()

如何使用Python进行股票市场分析和预测? 如何使用Python进行股票市场分析和预测? Aug 11, 2025 pm 06:56 PM

Python可以用于股票市场分析与预测,答案是肯定的,通过使用yfinance等库获取数据,利用pandas进行数据清洗和特征工程,结合matplotlib或seaborn进行可视化分析,再运用ARIMA、随机森林、XGBoost或LSTM等模型构建预测系统,并通过回测评估性能,最终可借助Flask或FastAPI部署应用,但需注意市场预测的不确定性、过拟合风险及交易成本影响,成功依赖于数据质量、模型设计和合理预期。

如何在Python类中实现自定义迭代器? 如何在Python类中实现自定义迭代器? Aug 06, 2025 pm 01:17 PM

Define__iter__()toreturntheiteratorobject,typicallyselforaseparateiteratorinstance.2.Define__next__()toreturnthenextvalueandraiseStopIterationwhenexhausted.Tocreateareusablecustomiterator,managestatewithin__iter__()oruseaseparateiteratorclass,ensurin

如何在Python中打印出JSON文件? 如何在Python中打印出JSON文件? Aug 07, 2025 pm 12:10 PM

要美化打印JSON文件,需使用json模块的indent参数,具体步骤为:1.使用json.load()读取JSON文件数据;2.使用json.dump()并将indent设为4或2写入新文件,即可生成格式化后的JSON文件,完成美化打印。

See all articles