如何在python turtle中制作余弦波图?

2024-04-28 03:55:37 发布

您现在位置:Python中文网/ 问答频道 /正文

以下是我的余弦波形图代码:

import turtle 
import math

wn = turtle.Screen()
turt = turtle.Turtle()
t = turtle.Turtle()

t.forward(90)

t.write(' π/2 ',font=("Arial", 12))

t.dot()

t.forward(90)

t.write(' π ',font=("Arial", 12))
t.dot()


t.forward(90)

t.write(' 3π/2 ',font=("Arial", 12))

t.dot()

t.forward(90)

t.write(' 2π ',font=("Arial", 12))
t.dot()
t.backward(360)
t.write((0,0),font=("Arial", 12))

t.dot()

t.left(90)

t.forward(100)

t.write((0,1),font=("Arial", 12))

t.dot()
t.forward(100)
t.write((0,2),font=("Arial", 12))
t.dot()
t.backward(300)
t.write((0,-1),font=("Arial", 12))
t.dot()
    


t.backward(100)

t.write((0,-2),font=("Arial", 12))

t.dot()

t.forward(200)

t.right(90)


t.backward(90)

t.write(' -π/2 ',font=("Arial", 12))

t.dot()

t.backward(90)

t.write(' -π ',font=("Arial", 12))

t.dot()
t.backward(90)

t.write(' -3π/2 ',font=("Arial", 12))

t.dot()

t.backward(90)

t.write(' -2π ',font=("Arial", 12))

t.dot()


for x in range(-360,360):
    turt.goto(x, math.cos(math.radians(x)) * 100)
    t.penup()
    t.setpos(-180,-125)
    t.goto(-180,-125)
    t.pendown()
wn.exitonclick()

它工作正常,但我无法得到正确的图形。我得到的图形如下: enter image description here

在这里,我不想要来自原点的额外线条。 请帮我更正一下代码。 (我只想修改一小部分,而不是整段代码)


Tags: 代码import图形mathdotwriteforwardfont
1条回答
网友
1楼 · 发布于 2024-04-28 03:55:37

首先将海龟移动到起点,不绘制:

t.penup()
t.setpos(-360, 100)
t.pendown()

然后用这只乌龟画画,不要用另一只乌龟(t而不是turt)

for x in range(-360,360):
    t.goto(x, math.cos(math.radians(x)) * 100)
    # the lines here are unnecessary
wn.exitonclick()

相关问题 更多 >