不会画函数图像?套用模板就行了

使用的模块:turtle、math

模块安装:在命令行输入  pip install turtle

                                         pip install math

1.建立坐标轴

def set(wide,high):#建立坐标图
    turtle.speed(0)
    turtle.pencolor('red')
    turtle.setup(wide,high)
    turtle.forward(wide/2)
    turtle.backward(wide)
    turtle.forward(wide/2)
    turtle.left(90)
    turtle.forward(high/2)
    turtle.backward(high)
    turtle.forward(high/2)

2.由参数范围和步长定义函数

ef frange(start,stop,step):#返回一个浮点数列表
    a=[]
    for i in range(int((stop-start)/step)):
        a.append("{:f}".format(start+step*i))
    return a

3.示例

 用以下代码来实现作图:

turtle.pencolor('blue')
for t in frange(-10*(math.pi),10*(math.pi),0.01):
    t=float(t)#列表的元素是字符串,转换成浮点数运算
    x=(3*300*t)/(4*(1+t**3))
    y=(3*300*(t**2))/(4*(1+t**3))#函数关系
    if t == -10 * (math.pi):
        turtle.penup()
        turtle.goto(x,y)
        turtle.pendown()
    turtle.speed(0)
    turtle.goto(x,y)

完整代码:

import turtle,math

def set(wide,high):#建立坐标图
    turtle.speed(0)
    turtle.pencolor('red')
    turtle.setup(wide,high)
    turtle.forward(wide/2)
    turtle.backward(wide)
    turtle.forward(wide/2)
    turtle.left(90)
    turtle.forward(high/2)
    turtle.backward(high)
    turtle.forward(high/2)

set(600,600)

def frange(start,stop,step):#返回一个浮点数列表
    a=[]
    for i in range(int((stop-start)/step)):
        a.append("{:f}".format(start+step*i))
    return a

turtle.pencolor('blue')
for t in frange(-10*(math.pi),10*(math.pi),0.01):
    t=float(t)#列表的元素是字符串,转换成浮点数运算
    x=(3*300*t)/(4*(1+t**3))
    y=(3*300*(t**2))/(4*(1+t**3))#函数关系
    if t == -10 * (math.pi):
        turtle.penup()
        turtle.goto(x,y)
        turtle.pendown()
    turtle.speed(0)
    turtle.delay(0)
    turtle.goto(x,y)

turtle.done()

在作图过程中你可能会遇到作图慢的困扰,那么如何提高作图速度呢?你首先想到的可能是turtle.speed(0),即使这样也不能很快的提高作图速度。这时你需要使用turtle.delay(0),turtle作图默认会有延迟,将参数设置为0,就可以消除延迟了。

注:delay函数必须跟在speed函数后面使用才有效果。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

莫小烦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值