美文网首页
python 画图小项目

python 画图小项目

作者: 跳跳1314 | 来源:发表于2017-12-14 21:53 被阅读0次

小白在看了很多Python教程之后,觉得是时候做点什么小项目来练练书了

于是东找西找,找到了一个结合爬虫的绘图的小项目,虽然是小项目,但是毕竟我是个小白啊,所以还是踩了坑,调了bug

代码如下:

from urllib import urlopen                                   

  #urllib 是一个爬虫的库

from reportlab.graphics.shapes import *            

#reportlab是一个绘图的库

from reportlab.graphics.charts.lineplots import LinePlot

from reportlab.graphics.charts.textlabels import Label

from reportlab.graphics import renderPDF

URL = 'http://services.swpc.noaa.gov/text/predicted-sunspot-radio-flux.txt' 

 #网址是一个预测气温的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)]

#这里用zip 函数将时间分别于预测值、最高值、最低值组合起来

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))

#在250,150 的位置显示一个字号为14,颜色为红色的,Sunspots

renderPDF.drawToFile(drawing, 'report3.pdf','Sunspots')

#将画好的图片保存为PDF,存在代码的相同目录下

在完成这段代码的过程中踩的坑有:

1.reportlab库没有安装,no moudle for reportlab

解决方案:在anacoda 命令行里输入pip install reportlab ,联网之后即可安装完成

2.找到的代码,原来的网址显示404

解决方案:404下面告诉我们网站地址修改了,在百度里又找到了新的网址,在网址里又找到了新的数据,新的txt,但是新的txt里数据的维数不对,月份是用英文表示的,又提示不能由字符转换float,又重新找了一个txt,数据终于对的上了,于是终于可以看到图片了,好欣慰。

代码执行结果图

这个故事告诉我们:菜鸟也可以改一下代码,做出来点东西的,继续加油!!

相关文章

  • python 画图小项目

    小白在看了很多Python教程之后,觉得是时候做点什么小项目来练练书了 于是东找西找,找到了一个结合爬虫的绘图的小...

  • python 心形动画表白(turtle)

    python画图库turtle

  • 用python画一幅好画

    <Python基础教程>里面的项目.用Python的包来进行数据可视化.下面的代码是PDF画图的原外型. 下面的几...

  • 海龟画图编辑器安装

    海龟画图介绍 海龟画图(turtle)是基于LOGO编程语言诞生的一个python绘图库,主要基于python2....

  • Python之MatPlotLib使用教程

    1.Matplotlib简介 Matplotlib是非常强大的python画图工具 Matplotlib可以画图线...

  • python画图

  • python 画图

    每次画图,你都要引入一个箭头模块,等于引入一支笔,你才能画图,代码是:import turtle,意思是引入一个龟...

  • python画图

    0 生成横坐标 在一张图上画多条曲线 shape 1 画散点+直线图的小例子「转,侵删」 My code 例子2 ...

  • python画图

    常见工具库如下: 1、matplotlib 2、Bar Charts 基本用法 计算数值出现的次数,得到分布结果 ...

  • python画图

    画图中文乱码 Python3 matplotlib 画图时中文会显示成乱码解决方法一:plt.rcParams['...

网友评论

      本文标题:python 画图小项目

      本文链接:https://www.haomeiwen.com/subject/vkplwxtx.html