精华内容
下载资源
问答
  • Python--turtle绘图库

    2021-01-18 16:13:57
    Python--turtle绘图库一、turtle库概述二、绘图场地--画布(canvas)三、绘图工具--画笔四、绘图动作--绘图命令 一、turtle库概述 turtle库是Python中用于绘制图形的其中一种函数库,还有其他绘图函数库,如...

    一、turtle库概述

    turtle库是Python中用于绘制图形的其中一种函数库,还有其他绘图函数库,如matplotlib库、seaborn库、Bokeh库等。
    1.Matplotlib: 是一个最基础的Python可视化库,作图风格接近MATLAB,所以称为matplotlib。一般都是从matplotlib上手Python数据可视化,然后开始做纵向与横向拓展。
    2.Seaborn:是一个基于matplotlib的高级可视化效果库,针对的点主要是数据挖掘和机器学习中的变量特征选取,seaborn可以用短小的代码去绘制描述更多维度数据的可视化效果图。
    3.Bokeh: 是一个用于做浏览器端交互可视化的库,实现分析师与数据的交互。
    4.turtle:是Python中较为简单基础的绘图工具,可以当做其是一个画图工具,与前面三种的差别在于,前面三种在数据分析领域应用的很广。
    5.还有其他的数据绘图库,如echart等。可以按照的兴趣进行有目的的学习。

    二、绘图场地–画布(canvas)

        画布,提供给我们作图的地方,即可以作图,发展我们想象力的区域。在这块区域上,我们可以通过控制画笔的行为,绘制我们想绘制的图形。我们可以通过参数设置,设置画布在屏幕上的大小,位置,背景颜色。
    
    属性 函数 参数 作用
    画布大小 1. turtle.screensize()
    2. turtle.setup()
    1.turtle.screensize(canvwidth=宽, canvheight=高, bg=背景色)
    2. turtle.setup(width=宽, height=高, startx=起点x, starty=起点y)
    参数:width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例,(startx, starty): 这一坐标表示矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心。
    为画布设置大小 ,及位置
    初始位置 turtle.setup() turtle.setup(width=0.5, height=0.75, startx=None, starty=None),参数:width, height: 输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的比例,(startx, starty): 这一坐标表示矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心。 决定画布与屏幕的位置关系
    颜色背景 turtle.screensize() turtle.screensize(canvwidth=None, canvheight=None, bg=None),参数分别为画布的宽(单位像素), 高, 背景颜色。 可以决定画布的背景色

    三、绘图工具–画笔

    画笔是用来画出图形的工具,其实作图过程和现实生活中的作图过程中一样的,只不过是这里使用语句来控制作图。

    属性 函数 作用
    笔刷大小 turtle.pensize() 设置画笔的宽度
    笔刷颜色 turtle.pencolor() 传入参数设置画笔颜色,可以是字符串如"green", “red”,也可以是RGB 颜色分量组合
    笔刷速度 turtle.speed(speed) 设置画笔移动速度,画笔绘制的速度范围[0,10]整数,数字越大越快

    四、绘图动作–绘图命令

    函数 作用
    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.circle() 画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
    setx( ) 将当前x轴移动到指定位置
    sety( ) 将当前y轴移动到指定位置
    setheading(angle) 设置当前朝向为angle角度
    home() 设置当前画笔位置为原点,朝向东
    dot® 绘制一个指定直径和颜色的圆点
    turtle.fillcolor(colorstring) 绘制图形的填充颜色
    turtle.color(color1, color2) 同时设置pencolor=color1, fillcolor=color2
    turtle.filling() 返回当前是否在填充状态
    turtle.begin_fill() 准备开始填充图形
    turtle.end_fill() 填充完成
    turtle.hideturtle() 隐藏turtle画笔的形状
    turtle.showturtle() 显示turtle画笔的形状
    turtle.clear() 清空turtle窗口,但是turtle的位置和状态不会改变
    turtle.reset() 清空窗口,重置turtle为初始状态
    stamp() 复制当前形状
    turtle.clear() 清空turtle窗口,但是turtle的位置和状态不会改变
    turtle.write(s [,font=(“font-name”,font_size,“font_type”)]) 写文本,s为文本内容,font是字体的参数,分别为字体名称,大小和类型;font为可选项,font参数也是可选项
    turtle.mainloop()或turtle.done() 为画图操作的最后一个语句,用于停止操作并且展示绘图结果
    展开全文
  • Turtle绘图库的使用

    千次阅读 2018-04-14 10:35:11
    Turtle绘图库的使用 Turtle库是非常适合儿童学习的入门绘图库。绘画的过程就像拿一支画笔在画布画画一样,非常直观和易于理解。下面举几个例子并用提到的这些例子作一些练习。 设定画布大小:setup(canvas_width,...

    Turtle绘图库的使用

    Turtle库是非常适合儿童学习的入门绘图库。绘画的过程就像拿一支画笔在画布画画一样,非常直观和易于理解。下面举几个例子并用提到的这些例子作一些练习。

    • 设定画布大小:setup(canvas_width, canvas_high, coordinate_x, coordinate_y)
    • 设定画笔笔迹大小:pensize(number)
    • 设定画笔颜色:pencolor(color in number)
    • 设定画笔行进方向:seth(angle)
    • 提起画笔:penup()
    • 放下画笔:pendown()
    • 画直线:fd(distance)
    • 画圆:circle(radius)

    扩展阅读

    Python标准库Turtle文档

    练习

    import turtle as t
    import random as r
    
    
    def randomcolor():
        color = (r.random(), r.random(), r.random())
        return color
    
    
    def moveto(x, y):
        t.penup()
        t.goto(x, y)
        t.pendown()
    
    
    # set canvas dimension
    t.setup(800, 800, 200, 200)
    
    # draw 2 lines to separate the canvas in 4 zones
    t.pensize(1)
    t.pencolor(randomcolor())
    moveto(-400, 0)
    t.fd(800)
    moveto(0, 400)
    t.seth(-90)
    t.fd(800)
    
    t.pensize(5)
    t.pencolor(randomcolor())
    
    # draw a square
    moveto(-300, 100)
    for i in range(4):
        t.seth(90 * i)
        t.fd(200)
    
    # a hexagon
    moveto(100, 80)
    for i in range(6):
        t.seth(i * 60)
        t.fd(150)
    
    # a special form
    moveto(-280, -320)
    param = 9
    for i in range(param):
        t.seth(i * 720 / param)
        t.fd(200)
    
    # circles
    moveto(200, -350)
    t.seth(0)
    for i in range(4):
        t.circle(i * 20 + 100)
    
    t.done()

    函数练习

    编程中经常需要自定义函数,以方便重复使用。把上面的代码稍微加以改变,自定义一些函数,得到的是同一个运行结果。

    import turtle as t
    import random as r
    
    
    def randomcolor():
        color = (r.random(), r.random(), r.random())
        return color
    
    
    def moveto(x, y):
        t.penup()
        t.goto(x, y)
        t.pendown()
    
    
    def square(a):
        for i in range(4):
            t.seth(90 * i)
            t.fd(a)
    
    
    def hexagon(a):
        for i in range(6):
            t.seth(i * 60)
            t.fd(a)
    
    
    def myform(param):
        for i in range(param):
            t.seth(i * 720 / param)
            t.fd(200)
    
    
    def circles(num):
        t.seth(0)
        for i in range(num):
            t.circle(i * 20 + 100)
    
    
    # set canvas dimension
    t.setup(800, 800, 200, 200)
    
    # draw 2 lines to separate the canvas in 4 zones
    t.pensize(1)
    t.pencolor(randomcolor())
    moveto(-400, 0)
    t.fd(800)
    moveto(0, 400)
    t.seth(-90)
    t.fd(800)
    
    t.pensize(5)
    t.pencolor(randomcolor())
    
    # draw a square
    moveto(-300, 100)
    square(200)
    
    
    # a hexagon
    moveto(100, 80)
    hexagon(150)
    
    # a special form
    moveto(-280, -320)
    myform(9)
    
    # circles
    moveto(200, -350)
    circles(4)
    
    t.done()

    运行结果

    运行结果

    展开全文
  • turtle绘图库做科学绘图工具前言开始画图部分画坐标轴项目github附录A:如何使用:附录B:更方便的matplotlib如何使用:附录C:其他:作者 前言 这个项目还是有一点小瑕疵的,那就是总是超出那么一点来和没有加入...

    前言

    plotter绘制matplotlib风格图
    plotter绘制plotter风格图
    plotter绘制matplotlib风格图

    这个项目还是有一点小瑕疵的,那就是总是超出那么一点来和没有加入圆滑处理

    开始

    献上代码

    import turtle as t
    t.colormode(255)
    t.speed(0)
    t.delay(0)
    def _draw_axis(op,xlab,ylab,p):
        t.hideturtle()
        xsize = max([i[0] for i in p]) + abs(min([i[0] for i in p]))
        ysize = max([i[1] for i in p]) + abs(min([i[1] for i in p]))
        canv = t.getcanvas()
        w,h = canv.winfo_width() - 30,canv.winfo_height() - 30
        if(op == 2):
            xfac = w / 2 / xsize
            yfac = h / 2 / ysize
            t.penup()
            t.goto(0,0)
            t.pendown()
            t.pensize(5)
            t.goto(0,h / 2 - 10)
            t.goto(0,-h / 2 + 10)
            t.goto(0,0)
            t.goto(w / 2 - 10,0)
            t.goto(-w / 2 + 10,0)
            t.goto(0,0)
            t.pensize(2)
            return 15,15,xfac,yfac
        else:
            bx = abs(min(min([i[0] for i in p]), 0))
            by = abs(min(min([i[1] for i in p]), 0))
            bx = int(bx) if(int(bx) == bx) else int(bx) + 1
            by = int(by) if(int(by) == by) else int(by) + 1
            xfac = w / xsize
            yfac = h / ysize
            bx,by = bx * xfac,by * yfac
            t.penup()
            t.goto(-w / 2 + 10,-h / 2 + 10)
            t.pendown()
            t.pensize(5)
            t.goto(w / 2 + 10,-h / 2 + 10)
            t.goto(-w / 2 + 10, -h / 2 + 10)
            t.goto(-w / 2 + 10,h / 2 + 10)
            t.penup()
            t.goto(0,0)
            t.pendown()
            t.pensize(2)
            return -w / 2 + 15 + bx, -h / 2 + 15 + by,xfac,yfac
    def _get_gradient(l,r,n,h):
        r1,g1,b1 = l
        r2,g2,b2 = r
        f1 = float(n)
        f2 = float(h - n)
        r3 = int(r1 * f1 + r2 * f2)
        g3 = int(g1 * f1 + g2 * f2)
        b3 = int(b1 * f1 + b2 * f2)
        return (r3,b3,g3)
    def draw_curve_matplotlib_style(points,xlabel = '',ylabel = '',linecolor=(0,0,190)):
        xf,yf,xfac,yfac = _draw_axis(1,xlabel,ylabel,points)
        t.pencolor(linecolor)
        t.penup()
        t.goto(points[0][0] + xf,points[0][1] + yf)
        t.pendown()
        for i in points:
            x, y = i
            x, y = x * xfac, y * yfac
            t.goto(x + xf,y + yf)
        t.mainloop()
    def draw_scatter_matplotlib_style(points,xlabel = '',ylabel = '',pointcolor=(0,0,190),pointr=1):
        xf,yf,xfac,yfac = _draw_axis(1, xlabel, ylabel,points)
        t.pencolor(pointcolor)
        t.fillcolor(pointcolor)
        for i in points:
            x,y = i
            x,y = x * xfac,y * yfac
            t.penup()
            t.goto(x + xf,y + yf)
            t.pendown()
            t.begin_fill()
            t.circle(pointr)
            t.end_fill()
        t.mainloop()
    def draw_contour_matplotlib_style(points,xlabel = '',ylabel = '',low=(0,50,50),high=(0,255,255)):
        xf,yf,xfac,yfac = _draw_axis(1,xlabel,ylabel,points)
        plot = {}
        highest = float('-inf')
        for i in points:
            x, y, z = i
            highest = max(highest, y)
            if (y in plot):
                plot[y].append((x, z))
            else:
                plot[y] = [(x, z)]
    
        for i in plot:
            t.penup()
            t.goto(plot[i][0][0] + xf,plot[i][0][1] + yf)
            t.pendown()
            t.fillcolor(_get_gradient(low, high, i, highest))
            t.begin_fill()
            for j in plot[i]:
                x, y = j
                x, y = x * xfac, y * yfac
                t.goto(x + xf, y + yf)
            t.end_fill()
        t.mainloop()
    def draw_bar_chart_matplotlib_style(points,xlabel = '',ylabel = '',barcolor=(0,0,190),barwidth=5):
        xf,yf,xfac,yfac = _draw_axis(1,xlabel,ylabel,points)
        half_width = barwidth / 2
        t.pencolor(barcolor)
        t.fillcolor(barcolor)
        for i in points:
            x,y = i
            x, y = x * xfac, y * yfac
            t.penup()
            t.goto(x - half_width + xf,yf)
            t.pendown()
            t.begin_fill()
            t.goto(x + half_width + xf,yf)
            t.goto(x + half_width + xf,y + yf)
            t.goto(x - half_width + xf, y + yf)
            t.goto(x - half_width + xf, yf)
            t.end_fill()
        t.mainloop()
    def draw_curve_plotter_style(points,xlabel = '',ylabel = '',linecolor=(0,0,190)):
        xf,yf,xfac,yfac = _draw_axis(2,xlabel,ylabel,points)
        t.pencolor(linecolor)
        t.penup()
        t.goto(points[0][0] + xf, points[0][1] + yf)
        t.pendown()
        t.begin_fill()
        for i in points:
            x, y = i
            x, y = x * xfac, y * yfac
            t.goto(x + xf, y + yf)
        t.end_fill()
        t.mainloop()
    def draw_scatter_plotter_style(points,xlabel = '',ylabel = '',pointcolor=(0,0,190),pointr=1):
        xf,yf,xfac,yfac = _draw_axis(2,xlabel,ylabel,points)
        t.pencolor(pointcolor)
        t.fillcolor(pointcolor)
        for i in points:
            x, y = i
            x, y = x * xfac, y * yfac
            t.penup()
            t.goto(x + xf, y + yf)
            t.pendown()
            t.begin_fill()
            t.circle(pointr)
            t.end_fill()
        t.mainloop()
    def draw_contour_plotter_style(points,xlabel = '',ylabel = '',low=(0,50,50),high=(0,255,255)):
        xf,yf,xfac,yfac = _draw_axis(2,xlabel,ylabel,points)
        plot = {}
        highest = float('-inf')
        for i in points:
            x,y,z = i
            highest = max(highest,y)
            if(y in plot):
                plot[y].append((x,z))
            else:
                plot[y] = [(x,z)]
        for i in plot:
            t.fillcolor(_get_gradient(low,high,i,highest))
            t.penup()
            t.goto(plot[i][0][0] + xf, plot[i][0][1] + yf)
            t.pendown()
            t.begin_fill()
            for j in plot[i]:
                x, y = j
                x, y = x * xfac, y * yfac
                t.goto(x + xf, y + yf)
            t.end_fill()
        t.mainloop()
    def draw_bar_chart_plotter_style(points,xlabel = '',ylabel = '',barcolor=(0,0,190),barwidth=5):
        xf,yf,xfac,yfac = _draw_axis(2,xlabel,ylabel,points)
        half_width = barwidth / 2
        t.pencolor(barcolor)
        t.fillcolor(barcolor)
        for i in points:
            x, y = i
            x, y = x * xfac, y * yfac
            t.penup()
            t.goto(x - half_width + xf, yf)
            t.pendown()
            t.begin_fill()
            t.goto(x + half_width + xf, yf)
            t.goto(x + half_width + xf, y + yf)
            t.goto(x - half_width + xf, y + yf)
            t.goto(x - half_width + xf, yf)
            t.end_fill()
        t.mainloop()
    

    这次代码比较冗长,就讲一下思路和重点代码哈,剩下的自己应该能理解的了。

    画图部分

    曲线图:每一次使用goto函数去到一个需要画的点即可

    散点图:每一次提笔并goto到需要画的点然后落笔画一个圆

    等高线:按照高度画曲线图,并以用如下\downarrow代码产生的颜色填充

    def _get_gradient(l,r,n,h):
        r1,g1,b1 = l
        r2,g2,b2 = r
        f1 = float(n)
        f2 = float(h - n)
        r3 = int(r1 * f1 + r2 * f2)
        g3 = int(g1 * f1 + g2 * f2)
        b3 = int(b1 * f1 + b2 * f2)
        return (r3,b3,g3)
    

    即将 c1c_1c2c_2按比例混合。

    柱状图: goto到要画的点后画一个长方形并填充即可

    画坐标轴

    def _draw_axis(op,xlab,ylab,p):
        t.hideturtle()
        xsize = max([i[0] for i in p]) + abs(min([i[0] for i in p]))
        ysize = max([i[1] for i in p]) + abs(min([i[1] for i in p]))
        canv = t.getcanvas()
        w,h = canv.winfo_width() - 30,canv.winfo_height() - 30
        if(op == 2):
            xfac = w / 2 / xsize
            yfac = h / 2 / ysize
            t.penup()
            t.goto(0,0)
            t.pendown()
            t.pensize(5)
            t.goto(0,h / 2 - 10)
            t.goto(0,-h / 2 + 10)
            t.goto(0,0)
            t.goto(w / 2 - 10,0)
            t.goto(-w / 2 + 10,0)
            t.goto(0,0)
            t.pensize(2)
            return 15,15,xfac,yfac
        else:
            bx = abs(min(min([i[0] for i in p]), 0))
            by = abs(min(min([i[1] for i in p]), 0))
            bx = int(bx) if(int(bx) == bx) else int(bx) + 1
            by = int(by) if(int(by) == by) else int(by) + 1
            xfac = w / xsize
            yfac = h / ysize
            bx,by = bx * xfac,by * yfac
            t.penup()
            t.goto(-w / 2 + 10,-h / 2 + 10)
            t.pendown()
            t.pensize(5)
            t.goto(w / 2 + 10,-h / 2 + 10)
            t.goto(-w / 2 + 10, -h / 2 + 10)
            t.goto(-w / 2 + 10,h / 2 + 10)
            t.penup()
            t.goto(0,0)
            t.pendown()
            t.pensize(2)
            return -w / 2 + 15 + bx, -h / 2 + 15 + by,xfac,yfac
    

    就是按照要求画两条线,并计算xf,yf,xfac,yfac分别代表曲线的位置(xf,yf)和曲线在两个方向上的缩放倍数(xfac,yfac)。

    计算方法如下\downarrow
    op=1op=1时:
    xf == yf =15=15,也就是 坐标系位置 ++ 线宽。
    xfac == 画布宽度 ÷\div xx轴长度
    yfac == 画布高度 ÷\div yy轴长度

    op=2op=2时:
    xf == 坐标系xx轴位置 ++ 线宽 ++ xx轴最低位置与0中的最小值的绝对值向上取整(这里这么长的的东西是为了让曲线在图里面)
    yf == 坐标系yy轴位置 ++ 线宽 ++ yy轴最低位置与0中的最小值的绝对值向上取整(这里这么长的的东西是为了让曲线在图里面)
    xfac == 画布宽度 ÷\div xx轴长度
    yfac == 画布高度 ÷\div yy轴长度

    项目github

    github传送门

    附录A:如何使用:

    格式为draw_..._matplotlib_style的为matplotlib风格的绘图函数
    格式为draw_..._plotter_style的为plotter原生风格的绘图函数
    ...可以为curve(曲线图)、scatter(散点图)、contour(等高线)、bar_chart
    参数请自行查看源代码,每个函数中的points参数格式是[(x1,y1,z1),(x2,y2,z2),][(x_1,y_1,z_1),(x_2,y_2,z_2),\cdots](等高线contour函数)或[(x1,y1),(x2,y2),][(x_1,y_1),(x_2,y_2),\cdots](其他函数)

    附录B:更方便的matplotlib如何使用:

    英文官网
    中文官网


    作者

    hit-road

    拜拜,下课!
    回到顶部

    展开全文
  • turtle的原理turtle(海龟)是一种真实的存在有一只海龟,其实在窗体正中心,在画布上游走走过的轨迹形成了绘制的图形海龟由程序控制,可以变换颜色、改变宽度等turtle的绘图窗体turtle.setup(width, height, startx, ...

    turtle的原理

    turtle(海龟)是一种真实的存在

    有一只海龟,其实在窗体正中心,在画布上游走

    走过的轨迹形成了绘制的图形

    海龟由程序控制,可以变换颜色、改变宽度等

    turtle的绘图窗体

    turtle.setup(width, height, startx, starty)

    setup()设置窗体大小及位置

    4个参数中后两个可选

    setup()不是必须的

    python蟒蛇的绘制

    #pythonDraw.py

    import turtle

    turtle.setup(650,350,200,200)

    turtle.pu()

    turtle.fd(-250)

    turtle.pd()

    turtle.pensize(20)

    turtle.pencolor("red")

    turtle.seth(-40)

    for i in range(4):

    t.circle(40,80)

    t.circle(-40,80)

    turtle.circle(40,80/2)

    turtle.fd(40)

    turtle.circle(16,180)

    turtle.fd(40*2/3)

    turtle.done()1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    运行效果如下

    watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1NjgwNTY2,size_16,color_FFFFFF,t_70

    turtle程序语法元素分析

    库引用与import

    库引用

    作用:扩充Python程序功能的方式

    import更多用法

    使用import保留字完成,采用<1>.<2>编码风格

    import <库名>

    <库名>.<函数名>(<函数参数>)

    -from <库名> import <函数名>

    from <库名> import *

    <函数名>(<函数参数>)

    第一种方法不会出现函数重名问题,第二种方法则会出现

    -使用import和as保留字共同完成

    import <库名> as <库别名>

    <库别名>.<函数名>(<函数参数>)

    给调用的外部库关联一个更短、更适合自己的名字,这个方法比较实用

    #pythonDraw.py

    import turtle as t

    t.setup(650,350,200,200)

    t.pu()

    t.fd(-250)

    t.pd()

    t.pensize(20)

    t.pencolor("red")

    t.seth(-40)

    for i in range(4):

    t.circle(40,80)

    t.circle(-40,80)

    t.circle(40,80/2)

    t.fd(40)

    t.circle(16,180)

    t.fd(40*2/3)

    t.done()1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    turtle画笔控制函数

    特点:画笔操作后一直有效,一般成对出现

    -turtle.penup() 别名 turtle.pu() 抬起画笔,海龟在飞行

    turtle.pendown() 别名 turtle.pd() 落下画笔,海龟在爬行

    turtle.pensize(width) 别名 turtle.width(width) 画笔宽度,海龟的腰围

    turtle.pencolor(color) color为颜色字符串或r,g,b值 画笔颜色,海龟在涂装

    pencolor(color)的color可以有三种形式

    颜色字符串 :turtle.pencolor(“purple”)

    RGB的小数值:turtle.pencolor(0.63, 0.13, 0.94)

    RGB的元组值:turtle.pencolor((0.63,0.13,0.94))

    RGB颜色值对照表

    turtle运动控制函数

    控制海龟行进:走直线 & 走曲线

    特点:画笔设置后一直有效,直至下次重新设置

    turtle.forward(d) 别名 turtle.fd(d)

    向前行进,海龟走直线

    d: 行进距离,可以为负数

    turtle.circle(r, extent=None) 根据半径r绘制extent角度的弧形

    r: 默认圆心在海龟左侧r距离的位置

    extent: 绘制角度,默认是360度整圆

    turtle方向控制函数

    控制海龟面对方向: 绝对角度 & 海龟角度

    特点:只改变运动方向,不行动。

    turtle.setheading(angle) 别名 turtle.seth(angle)

    改变行进方向,海龟走角度

    angle: 行进方向的绝对角度

    turtle.left(angle) 海龟向左转

    turtle.right(angle) 海龟向右转

    angle: 在海龟当前行进方向上旋转的角度

    掌握了turtle绘画库的方法就可以绘画这个世界了,快来试试吧!

    展开全文
  • #引入turtle/海龟库(支持画图功能) import turtle as t ''' 绘制一个正方形 ''' t.fd(100) t.circle(0, 90) t.fd(200) t.circle(0, 90) t.fd(200) t.circle(0, 90) t.fd(200) t.circle(0, 90) t.fd(100) ''' ...
  • 初试turtle绘图库

    千次阅读 2017-05-06 23:07:41
    import turtle turtle.speed(10) turtle.setup(1300,800,0,0)#窗口相素大小1300*800 pythonsize = 10 turtle.pensize(pythonsize)#画笔粗细 turtle.pencolor("red")#画笔颜色 turtle.seth(0)#初始方向...
  • 1、turtle库介绍 使用方法:from turtle import * 显示器和turtle窗体的左上角都是原点 turtle.screensize(1000,600,...
  • 下面的代码为 python 蟒蛇绘制举例,其中的注释行对 turtle 绘图库的调用和其中的基本命令进行了简介 import turtle ## 引入一个绘图库 # 方法一 # import <库名> # 使用:库名.函数名(函数参数) # 方法...
  • turtle 属于比较简单的绘图库,不需要另行下载,下来主要从基本使用上简单讲述下: 1)画布初始化设置的两种方法: turtle.screensize(canvwidth=None, canvheight=None, bg=None) 参数分别为画布的宽(单位像素), 高,...
  • python----turtle绘图库

    2019-11-16 14:30:02
    python蟒蛇的绘制 ...import turtle turtle.setup(650,350,200,200) turtle.pu() turtle.fd(-250) turtle.pd() turtle.pensize(20) turtle.pencolor("red") turtle.seth(-40) for i in range(4): t.cir...
  • Turtle库是Python中内置的绘图库,功能十分强大。就像一个小海龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。
  • 实例:绘制一条蟒蛇#turtle:绘图库(海龟库)importturtleturtle.setup(650,350,200,200)turtle.penup()turtle.fd(-250)turtle.pendown()turtle.pensize(25)turtle.pencolor("purple")turtle.seth(-40)for i in range...
  • 声明:本文纯属原创,转载请注明出处,侵权必究. 作者联系方式 : QQ:993678929 头文件:Windows.h 包含了GDI绘图函数 math.h : 包含... 两个合起来就能实现随机渐变色了 我的绘图库完整项目地址: Tomlib 中的 tomgdi.h
  • 实例:绘制一条蟒蛇#turtle:绘图库(海龟库)importturtleturtle.setup(650,350,200,200)turtle.penup()turtle.fd(-250)turtle.pendown()turtle.pensize(25)turtle.pencolor("purple")turtle.seth(-40)for i in range...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 258
精华内容 103
关键字:

turtle绘图库