• 技术文章 >常见问题 >Python常见问题

    python中怎么画图

    silencementsilencement2020-03-03 16:23:28原创3292

    Python中画图主要是使用了tuirtle模块

    一、turtle其实就是一个画图板,给你提供了一个画笔。我们先设置一下基本的属性:

    1,运动属性

    forward(d) 向前移动距离d代表距离

    backward(d) 向后移动距离d代表距离

    right(degree) 向右转动多少度

    left(degree) 向左转动多少度

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

    stamp() 绘制当前图形

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

    2,画笔属性

    down()画笔落下,移动时绘制图形

    up()画笔抬起,移动时不绘制图形

    reset()恢复所有设置

    pensize(width)画笔的宽度

    pencolor(colorstring)画笔的颜色

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

    fill(Ture)开始

    fill(False)结束

    也可以color(‘color,’color’)

    circle(radius, extent)

    绘制一个圆形,其中radius为半径,extent为度数,例如若extent为180,则画一个半圆;如要画一个圆形,可不必写第二个参数

    3,例子

    下面一箭穿心的图像

    from turtle import *
    from time import sleep
    def go_to(x, y):
       up()
       goto(x, y)
       down()
    def big_Circle(size):  #函数用于绘制心的大圆
       speed(1)
       for i in range(150):
           forward(size)
           right(0.3)
    def small_Circle(size):  #函数用于绘制心的小圆
       speed(1)
       for i in range(210):
           forward(size)
           right(0.786) 
    def line(size):
       speed(1)
       forward(51*size)
    def heart( x, y, size):
       go_to(x, y)
       left(150)
       begin_fill()
       line(size)
       big_Circle(size)
       small_Circle(size)
       left(120)
       small_Circle(size)
       big_Circle(size)
       line(size)
       end_fill()
    def arrow():
       pensize(10)
       setheading(0)
       go_to(-400, 0)
       left(15)
       forward(150)
       go_to(339, 178)
       forward(150)
    def arrowHead():
       pensize()
       speed(1)
       color('red', 'red')
       begin_fill()
       left(120)
       forward(20)
       right(150)
       forward(35)
       right(120)
       forward(35)
       right(150)
       forward(20)
       end_fill()
    def main():
       pensize(2)
       color('red', 'pink')
       #getscreen().tracer(30, 0) #取消注释后,快速显示图案
       heart(200, 0, 1)          #画出第一颗心,前面两个参数控制心的位置,函数最后一个参数可控制心的大小
       setheading(0)             #使画笔的方向朝向x轴正方向
       heart(-80, -100, 1.5)     #画出第二颗心
       arrow()                   #画出穿过两颗心的直线
       arrowHead()               #画出箭的箭头
       go_to(400, -300)
       write("author:超哥", move=True, align="left", font=("宋体", 30, "normal"))
       done()
    main()

    更多技术请关注Python视频教程

    专题推荐:画图
    上一篇:python怎么读取列表前几位 下一篇:python无法调用cv2怎么解决

    相关文章推荐

    • python脚本怎么自动生成文件• python怎么获取系统时间• 怎么找python包的路径

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网