python入门turtle库实现螺旋曲线图的方法示例

记录turtle库中经常用到的函数。

  • turtle.forward(distance)  画笔向前移动distance距离
  • turtle.backforward(distance)  画笔向后移动distance距离
  • turtle.right(degree)  绘制方向向右旋转degree度
  • turtle.exitonclick()  点击关闭图形窗口
  • turtle.penup()   抬起画笔,之后移动画笔不绘制形状
  • turtle.pendown()  落下画笔,之后移动画笔绘制形状
  • turtle.pensize()  设置画笔宽度
  • turtle.pencolor()  设置画笔颜色,常用颜色{white,black,grey,dark,green,gold,violet,purple}

从入门学习python还是有点时间里,CSDN还是帮了我很多忙,这几天写了几个简单的turtle绘图,哈哈,兴趣所致,所以来分享一下我的三个代码,纯粹原创,不喜勿喷嘛

我用的是VSCODE,个人觉得挺好用的,就是turtle的报错还没找到解决方案,不过问题不大
第一个,最简单的正方形螺旋曲线图 我将它称为 :转圈圈1.0

import turtle

n = 500
turtle.penup()
turtle.goto(-450,150)
turtle.pendown()
turtle.pencolor("blue")

for i in range(500):
    n = n - 1
    #n -= 1
    turtle.speed(100)
    turtle.fd(n)
    turtle.right(90)

turtle.pendone()
# 转圈圈1.0

提前设定画笔的位置起点为(-450,150)调整画笔颜色为蓝色,然后一个for循环,依次让画笔绘制的距离减短,for循环中

turtle.fd(n) 的n值循环一次就减一,然后就有了最基础的版本转圈圈1.0

结果图如下:

好了最简单的完成了,接下来就开始添加东西,我可以用

n -= 1
# 让绘制的图像从边框绘制到中心,那么也就可以用
n += 1
#让绘制的图像从中心绘制到边框

 ok 转圈圈1.1出炉

import turtle

n = 0 #
turtle.penup()
turtle.goto(-450,150)
turtle.pendown()
turtle.pencolor("blue")

for i in range(500):
    n = n + 1 #
    #n += 1
    turtle.speed(100)
    turtle.fd(n)
    turtle.right(90)

turtle.pendone()
# 转圈圈1.1

转圈圈1.1结果如下:

转圈圈1.1

有#号的地方就是和1.0有区别的地方

马上到来转圈圈1.2 ,可以把1.0和1.1融合到一张图,重合两张图或者重新抬笔换起点都可以

import turtle

n = 500
turtle.speed(100)
turtle.penup()
turtle.goto(-450,150)
turtle.pendown()
turtle.pencolor("blue")

for i in range(1000):

    if i < 500:
        n = n - 1
        turtle.fd(n)
        turtle.right(90)
    else:
        n+=1
        turtle.pencolor('red')
        turtle.fd(n)
        turtle.right(90)

turtle.pendone()
#转圈圈1.2

运行结果如下:

转圈圈1.2

接下来,就再次增加新的东西一层一层的分颜色来绘制 因为我的n值为800,然后取了8个颜色(黑红橙黄绿蓝蓝靛紫)

import turtle

turtle.penup()
turtle.goto(-450,300)
turtle.pendown()
turtle.speed(100)
n = 800
for i in range(10000):
    n -= 1
    if 800 >= n >700:
        turtle.pencolor('purple')
    elif 700 >= n > 600:
        turtle.pencolor("indigo")
    elif 600 >= n > 500:
        turtle.pencolor("blue")
    elif 500 >= n > 400:
        turtle.pencolor("green")
    elif 400 >= n > 300:
        turtle.pencolor("yellow")
    elif 300 >= n > 200:
        turtle.pencolor("orange")
    elif 200 >= n > 100:
        turtle.pencolor("red")
    elif n > 0:
        turtle.pencolor("black")
    else:
        turtle.done()
    turtle.fd(n)
    turtle.right(90)

#转圈圈1.3
 

运行结果如下:

 在这个基础上,设定了n的取值大于0,当n的取值小于零了又会怎样?想想看,列如下面的第一行代码,相对于第二行的绘制肯定是绘制方向相反,按照设定的n-=1 ,n值小于零过后绝对值越来越大,那么绘制的螺旋曲线应该越来越大,那么,在上图基础上覆盖一层颜色上去,那么就成了我们的转圈圈1.4

turtle.fd(-100)
turtle.fd(100)

修改最后的elif和else的判断,即成为转圈圈1.4

import turtle

turtle.penup()
turtle.goto(-450,300)
turtle.pendown()
turtle.speed(100)
n = 800
for i in range(10000):
    n -= 1
    if 800 >= n >700:
        turtle.pencolor('purple')
    elif 700 >= n > 600:
        turtle.pencolor("indigo")
    elif 600 >= n > 500:
        turtle.pencolor("blue")
    elif 500 >= n > 400:
        turtle.pencolor("green")
    elif 400 >= n > 300:
        turtle.pencolor("yellow")
    elif 300 >= n > 200:
        turtle.pencolor("orange")
    elif 200 >= n > 100:
        turtle.pencolor("red")
    elif n > 0:
        turtle.pencolor("black")
    # else:
    #     turtle.pendone()
    elif n <= -800:
        turtle.pendone()
        # turtle.pencolor("white")
    else:
        turtle.pencolor("black")
    turtle.fd(n)
    turtle.right(90)

    #在这里,注释掉了转圈圈1.3里面的几行代码,转圈圈1.4出炉

 在转圈圈1.4中,判断语句设定其绘制从小到大的过程覆盖用的颜色为黑色

2019.11.20更新

import turtle
n = 500
# turtle.left(60)s
turtle.penup()
turtle.goto(-450,150)
turtle.pendown()
turtle.pencolor("blue")
for i in range(1,1000,1):

    if i < 500:
        n = n - 1
        turtle.speed(100)
        turtle.fd(n)
        turtle.right(140)
    else:
        n+=1
        turtle.speed(100)
        turtle.pencolor('red')
        turtle.fd(n)
        turtle.right(114)
turtle.done()
# 绘制正方形螺旋曲线
    

 修改了一个角度,然后自己悟!

到此这篇关于python入门turtle库实现螺旋曲线图的方法示例的文章就介绍到这了,更多相关python turtle螺旋曲线图内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解Python绘图Turtle库

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形. turtle绘图的基础知识: 1. 画布(canvas) 画布就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置. 设置画布大小 turtle.screensize(canvwidth=None, canvheight=None, bg=None),参数分别

  • python绘图模块之利用turtle画图

    模块之turtle 小故事 前两天朋友说:"常文啊!听说你会python,那能不能用python画一些好看的图呢?"然后我特意去学了一下turtle模块,现在给大家分享一下. 一.什么是turtle Turtle是python内嵌的绘制线.圆以及其他形状(包括文本)的图形模块. 二.turtle函数的使用 import turtle turtle.pendown() # 放下画笔 turtle.penup() # 抬起画笔 turtle.pensize(int) # 设置画笔宽度,值为

  • 用Python中的turtle模块画图两只小羊方法

    这两天在一个公众号里看到好玩的turtle库,今天来学习一下. turtle.circle(radius, extent=None, steps=None) 描述: 以给定半径画圆 参数: radius(半径); 半径为正(负),表示圆心在画笔的左边(右边)画圆 extent(弧度) (optional); steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps) radius > 0,逆时针画圆 radius < 0,顺时针画圆 extent &g

  • python turtle 绘制太极图的实例

    效果如下所示: # -*- coding: utf-8 -*- import turtle # 绘制太极图函数 def draw_TJT(R):     turtle.screensize(800, 600, "green")  # 画布长.宽.背景色 长宽单位为像素     turtle.pensize(1)  # 画笔宽度     turtle.pencolor('black')  # 画笔颜色     turtle.speed(10)  # 画笔移动速度     TJT_colo

  • Python绘图操作之turtle库乌龟绘图全面整理

    目录 官方文档网址 绘图窗口 空间坐标体系 绝对坐标 海龟坐标 角度坐标体系 绝对角度 海龟角度 RGB色彩体系 画笔控制函数 运动控制函数 方向控制函数 全局控制命令 示例 蟒蛇绘制 七段数码管日期显示 太阳花 库函数表格整理 画笔运动命令 画笔控制命令 全局控制命令 其他命令 [函数表格整理在最下方] 官方文档网址 turtle 绘图窗口 turtle.setup(width, height, startx, starty) 参数:width, height: 输入宽和高为整数时, 表示像素

  • Python绘图之turtle库的基础语法使用

    前言 Python语言的turtle库是一个直观有趣的图形绘制函数库,是python语言标准库之一. turtle库也叫海龟库,是turtle绘图体系的Python实现.turtle库是Python语言的标准库之一,是入门级的图形绘制函数库. turtle绘图体系:也叫海龟绘图系统,它是在1969年诞生,主要用于程序设计入门的一种绘图方式. Python计算生态 = 标准库 + 第三方库 标准库:随解释器直接安装到操作系统中的功能模块. 第三方库:需要经过安装才能使用的功能模块. turtle官

  • Python3使用turtle绘制超立方体图形示例

    本文实例讲述了Python3使用turtle绘制超立方体图形.分享给大家供大家参考,具体如下: 利用Python3中turtle的绘制超立方体. 绘图思路: 1)求出边长100的超立方体的点坐标: 以竖直线为依据,将点分为上下两组: a为上边点列表,b为下边点列表: a = [[120.71, 50], [50, 120.71], [-50, 120.71], [-120.71, 50], [-50, -20.71], [50, -20.71], [20.71, 50],[-20.71, 50]

  • python turtle绘图命令及案例

    目录 一.绘图命令 1.画笔运动命令 2.画笔控制命令 3.全局控制命令 二.案例 1.案例一 2.案例二 3.案例三 4.案例四 5.案例五 一.绘图命令 操纵海龟绘图有很多命令,可以划分为三种:画笔运动命令.画笔控制命令.全局控制命令 1.画笔运动命令 命令 说明 turtle.forward(distance) 向当前画笔方向移动distance像素长度 turtle.backward(distance) 向当前画笔相反方向移动distance像素长度 turtle.right(degre

  • python基于turtle绘制几何图形

    1. 什么是turtle turtle模拟了人在画布前画画的过程:给你一支笔(Pen), 下笔(pendown),移动画笔绘制你的图形,然后填色等等.turtle提供了几种简单的命令,通过组合他们的顺序,只要够耐心,turtle可以画出令人惊叹的作品,很适合用来引导小朋友学习编程. 先来感受下作品: 2. turtle例子 我们通过一个简单的例子来了解turtle的基本操作 import turtle # screen 画布属性设置 canvas = turtle.Screen() canvas

  • python入门turtle库实现螺旋曲线图的方法示例

    记录turtle库中经常用到的函数. turtle.forward(distance)  画笔向前移动distance距离 turtle.backforward(distance)  画笔向后移动distance距离 turtle.right(degree)  绘制方向向右旋转degree度 turtle.exitonclick()  点击关闭图形窗口 turtle.penup()   抬起画笔,之后移动画笔不绘制形状 turtle.pendown()  落下画笔,之后移动画笔绘制形状 turt

  • Python用UUID库生成唯一ID的方法示例

    UUID介绍 UUID是128位的全局唯一标识符,通常由32字节的字符串表示.它可以保证时间和空间的唯一性,也称为GUID,全称为:UUID -- Universally Unique IDentifier,Python 中叫 UUID. 它通过MAC地址.时间戳.命名空间.随机数.伪随机数来保证生成ID的唯一性. UUID主要有五个算法,也就是五种方法来实现. uuid1()--基于时间戳.由MAC地址.当前时间戳.随机数生成.可以保证全球范围内的唯一性,但MAC的使用同时带来安全性问题,局域

  • Python turtle库(绘制螺旋正方形)

    目录 turtle库绘制螺旋正方形 1.螺旋正方形 2.彩色螺旋正方形 第三方库turtle的应用 1.pip安装turtle库 2.绘图坐标系 3.turtle的画笔控制方法 4.turtle的图形绘制方法 5.简单应用示例 turtle库绘制螺旋正方形 1.螺旋正方形 import turtle #导入turtle库 turtle.pensize(2) #设置画笔的宽度(2) for i in range(100): #循环(画)100次 turtle.fd(i + (i * 2)) #每次

  • python使用turtle库绘制奥运五环

    Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形. 效果图: #奥运五环 import turtle turtle.setup(1.0,1.0) #设置窗口大小 turtle.title("奥运五环") #蓝圆 turtle.penup() turtle.right(90) turtle.forward(-50) tu

  • Python利用turtle库绘制彩虹代码示例

    语言:Python IDE:Python.IDE 需求 做出彩虹效果 颜色空间 RGB模型:光的三原色,共同决定色相 HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相 需要将HSB模型转换为RGB模型 代码示例: #-*- coding:utf-8 –*- from turtle import * def HSB2RGB(hues): hues = hues * 3.59 #100转成359范围 rgb=[0.0,0.0,0.0] i = int(hues/60)%6 f = hues/

  • python使用turtle库绘制树

    本文实例为大家分享了python使用turtle库绘制树的具体代码,供大家参考,具体内容如下 # -*- coding: utf-8 -*- """ Spyder Editor This is a temporary script file. """ import turtle, datetime def drawGap(): #绘制数码管间隔 turtle.penup() turtle.fd(5) def drawLine(draw): #绘制

  • 详解python使用turtle库来画一朵花

    看了群主最后成像的图片,应该是循环了36次画方框,每次有10度的偏移. 当然不能提前看答案,自己试着写代码. 之前有用过海龟画图来画过五角星.奥运五环.围棋盘等,所以感觉不难. # !/usr/bin/env python # -*- coding:utf-8 -*- # Author:wxh def run(): ''' 主方法 :return: None ''' import turtle length = 150 # 线段长度 angle = 45 # 角度 offset_angle =

  • Python使用Turtle库绘制一棵西兰花

    Turtle库是Python中一个强大的绘制图像的函数库,灵活使用Turtle库可以绘制各种好看的图像. 下面介绍使用Turtle库绘制一棵西兰花. 绘制一棵西兰花,从主干出发以一定的角度向左向右生成对称的枝干,再从每个枝干出发向左向右生成对称的枝干,循环此动作,并最终绘制出一棵漂亮的西兰花. 首先导入Turtle库,并设置画笔大小.画笔速度及颜色,并隐藏画笔 from turtle import Turtle p=Turtle() p.pensize(5) p.color(clr) p.hid

  • python 利用turtle库绘制笑脸和哭脸的例子

    我就废话不多说了,直接上代码吧! import turtle turtle.pensize(5) turtle.pencolor("yellow") turtle.fillcolor("red") turtle.penup() turtle.goto(0,-200) turtle.pendown() turtle.circle(200) turtle.penup() turtle.goto(-100,50) turtle.pendown() turtle.begin

随机推荐