python海龟绘图实例教程,python海龟实例教程


本文以实例形式介绍了python turtle模块即海龟绘图的使用方法,对于需要进行图形编程的朋友相信会有一定的借鉴价值。

python turtle模块简介:
 python2.6版本中引入的一个简单的绘图工具,叫做海龟绘图(Turtle Graphics)

1.使用海龟绘图首先我们需要导入turtle,如下所示:

 from turtle import * #将turtle中的所有方法导入

2.海龟绘图属性:

 (1)位置
 (2)方向
 (3)画笔(画笔的属性,颜色、画线的宽度)

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

(1)运动命令:

  forward(degree)  #向前移动距离degree代表距离
  backward(degree)  #向后移动距离degree代表距离
  right(degree)    #向右移动多少度
 left(degree)  #向左移动多少度
 goto(x,y)  #将画笔移动到坐标为x,y的位置
  stamp()     #复制当前图形
 speed(speed)  #画笔绘制的速度范围[0,10]整数

(2)画笔控制命令:

 down() #移动时绘制图形,缺省时也为绘制
 up() #移动时不绘制图形
 pensize(width) #绘制图形时的宽度
 color(colorstring) #绘制图形时的颜色
 fillcolor(colorstring) #绘制图形的填充颜色
 fill(Ture)
 fill(false)

4.关于turtle简介许多下面我们看个实例:

(一)绘制正方形:

 import turtle
 import time
#定义绘制时画笔的颜色
 turtle.color("purple")
#定义绘制时画笔的线条的宽度
 turtle.size(5)
#定义绘图的速度 
turtle.speed(10)
#以0,0为起点进行绘制
 turtle.goto(0,0)
#绘出正方形的四条边
 for i in range(4):
   turtle.forward(100)
   turtle.right(90)
#画笔移动到点(-150,-120)时不绘图
 turtle.up()
 turtle.goto(-150,-120)
#再次定义画笔颜色
 turtle.color("red")
#在(-150,-120)点上打印"Done"
 turtle.write("Done")
 time.sleep(3)

(二)绘制五角星:

import turtle
import time
turtle.color("purple")
turtle.pensize(5)
turtle.goto(0,0)
turtle.speed(10)
for i in range(6):
 turtle.forward(100)
 turtle.right(144)
turtle.up()
turtle.forward(100)
turtle.goto(-150,-120)
turtle.color("red")
turtle.write("Done")
time.sleep(3)

这里给出了两个简单的实例,大家可以根据上面的思路与方法进一步拓展,绘制出一些更复杂的图形。


Python 画图存储(savefig)

建议你用面向对象的方式去画图,一个图作为一个对象,这样每次调用一个对象的保存图片方法就可以只保存当前图片。你这种用法第三张图会有三个子图是因为三个子图都画在同一个对象上。为了将面向对象的绘图库包装成只使用函数的调用接口,pyplot模块的内部保存了当前图表以及当前子图等信息。当前的图表和子图可以使用gcf()和gca()获得,它们分别是“Get Current Figure”和“Get Current Axis”的开头字母缩写。gcf()获得的是表示图表的Figure对象,而gca()则获得的是表示子图的Axes对象。下面我们在IPython中运行上节的“matplotlib_simple_plot.py”程序,然后调用gcf()和gca()查看当前的Figure和Axes对象。给你个例子import numpy as npimport matplotlib.pyplot as pltplt.figure(1) # 创建图表1plt.figure(2) # 创建图表2ax1 = plt.subplot(211) # 在图表2中创建子图1ax2 = plt.subplot(212) # 在图表2中创建子图2x = np.linspace(0, 3, 100)for i in xrange(5): plt.figure(1) ❶ # 选择图表1 plt.plot(x, np.exp(i*x/3)) plt.sca(ax1) ❷ # 选择图表2的子图1 plt.plot(x, np.sin(i*x)) plt.sca(ax2) # 选择图表2的子图2 plt.plot(x, np.cos(i*x))plt.show()
 

python画图的问题


在Word中画三角形的角平分线、高、中线:
1.执行“视图/工具栏/绘图”命令,调出“绘图”工具栏;
2.在“绘图”工具栏上点击“绘图/绘图网格”打开“绘图网格”对话框;
3.在对话框中进行“网格设置”“水平间距”“0.86行”、“垂直间距”“0.6行”,选中“在屏幕上显示网格线”“垂直间隔”“2”、“水平间隔”“2”;
4.单击“确定”按钮,文档中显示绘图网格线;
5.根据网格线绘制三角形的角平分线、高、中线(画线用“绘图”工具栏上的“直线”工具);
6.把绘制的三角形、角平分线、高、中线同时选中,并右击,执行“组合/组合”快捷菜单命令,把所绘制图形组合在一起,便于图形整体移动。
 

评论关闭