视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
python画图的两种方法
2020-11-27 14:08:36 责编:小采
文档


python如何画图?这里给大家介绍两款python绘图的库:turtle和Matplotlib。

相关推荐:《python视频》

1 安装turtle

Python2安装命令:

pip install turtule

Python3安装命令:

pip3 install turtle

2 基础概念

2.1 画布(canvas)

画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置。

常用的画布方法有两个:screensize()和setup()。

(1)turtle.screensize(canvwidth=None, canvheight=None, bg=None)

参数分别为画布的宽(单位像素), 高, 背景颜色

如:

turtle.screensize(800, 600, "green")

turtle.screensize() #返回默认大小(400, 300)

(2)turtle.setup(width=0.5, height=0.75, startx=None, starty=None)

参数:

width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例

(startx, starty): 这一坐标表示 矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心

如:

turtle.setup(width=0.6, height=0.6)
turtle.setup(width=800, height=800, startx=100, starty=100)

2.2 画笔

在画布上,默认有一个坐标原点为画布中心的坐标轴, 坐标原点上有一只面朝x轴正方向小乌龟。

这里我们描述小乌龟时使用了两个词语:标原点(位置),面朝x轴正方向(方向),turtle绘图中, 就是使用位置方向描述小乌龟(画笔)的状态

(1)画笔的属性

画笔有颜色、画线的宽度等属性。

1) turtle.pensize() :设置画笔的宽度;

2) turtle.pencolor() :没有参数传入返回当前画笔颜色;传入参数设置画笔颜色,可以是字符串如"green", "red",也可以是RGB 3元组。

>>> pencolor('brown')
>>> tup = (0.2, 0.8, 0.55)
>>> pencolor(tup)
>>> pencolor()
 '#33cc8c'

3) turtle.speed(speed) :设置画笔移动速度,画笔绘制的速度范围[0,10]整数, 数字越大越快

(2)绘图命令

操纵海龟绘图有着许多的命令,这些命令可以划分为3种:运动命令,画笔控制命令和全局控制命令

画笔运动命令:

命令 说明

turtle.forward(distance) 向当前画笔方向移动distance像素长

turtle.backward(distance) 向当前画笔相反方向移动distance像素长度

turtle.right(degree) 顺时针移动degree°

turtle.left(degree) 逆时针移动degree°

turtle.pendown() 移动时绘制图形,缺省时也为绘制

turtle.goto(x,y) 将画笔移动到坐标为x,y的位置

turtle.penup() 移动时不绘制图形,提起笔,用于另起一个地方绘制时用

turtle.speed(speed) 画笔绘制的速度范围[0,10]整数

turtle.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆

画笔控制命令:

命令 说明

turtle.pensize(width) 绘制图形时的宽度

turtle.pencolor() 画笔颜色

turtle.fillcolor(colorstring) 绘制图形的填充颜色

turtle.color(color1, color2) 同时设置pencolor=color1, fillcolor=color2

turtle.filling() 返回当前是否在填充状态

turtle.begin_fill() 准备开始填充图形

turtle.end_fill() 填充完成;

turtle.hideturtle() 隐藏箭头显示;

turtle.showturtle() 与hideturtle()函数对应

全局控制命令:

命令 说明

turtle.clear() 清空turtle窗口,但是turtle的位置和状态不会改变

turtle.reset() 清空窗口,重置turtle状态为起始状态

turtle.undo() 撤销上一个turtle动作

turtle.isvisible() 返回当前turtle是否可见

stamp() 复制当前图形

turtle.write(s[,font=("font-name",font_size,"font_type")]) 写文本,s为文本内容,font是字体的参数,里面分别为字体名称,大小和类型;font为可选项, font的参数也是可选项。

例子:

import turtle
def drawSnake(rad, angle, len, neckrad):
 for _ in range(len):
 turtle.circle(rad, angle)
 turtle.circle(-rad, angle)
 turtle.circle(rad, angle/2)
 turtle.forward(rad/2) # 直线前进
 turtle.circle(neckrad, 180)
 turtle.forward(rad/4)
if __name__ == "__main__":
 turtle.setup(1500, 1400, 0, 0)
 turtle.pensize(30) # 画笔尺寸
 turtle.pencolor("green")
 turtle.seth(-40) # 前进的方向
 drawSnake(70, 80, 2, 15)

Matpliotlib

前提

linux ubuntu 下需安装下面三个包:

Numpy, Scipy,Matplotlib

分别输入下面的代码进行安装:

pip install numpy
pip install scipy
sudo apt-get install python-matplotlib

测试是否安装成功

python
>>> import pylab

如果没有报错则安装成功

开始画图

1. 画最简单的直线图

代码如下:

import numpy as np
import matplotlib.pyplot as plt 
x=[0,1]
y=[0,1]
plt.figure()
plt.plot(x,y)
plt.savefig("easyplot.jpg")

结果如下:

代码解释:

#x轴,y轴
x=[0,1]
y=[0,1]
#创建绘图对象
plt.figure()
#在当前绘图对象进行绘图(两个参数是x,y轴的数据)
plt.plot(x,y)
#保存图象
plt.savefig("easyplot.jpg")

下载本文
显示全文
专题