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

    如何在python里画图

    silencementsilencement2020-03-11 22:32:51原创3058

    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,例子

    下面一箭穿心的图像

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    54

    55

    56

    57

    58

    59

    60

    61

    62

    63

    64

    65

    66

    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岗位主要做什么工作

    相关文章推荐

    • python应选什么编译工具• python if判断在哪写• Python中怎么写复数

    全部评论我要评论

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

  • 取消发布评论
  • 

    Python学习网