【问题标题】:How to make boundary of x and y points using turtle in Python如何在Python中使用乌龟制作x和y点的边界
【发布时间】:2017-03-31 04:44:48
【问题描述】:

我想问一下 Python 中的 turtle 库。

我有一个CSV 文件,其中包含一千多个十进制形式的 x 和 y 坐标。

我一直试图从中划出界限。如果有人在这方面指导我会更好。

x,y

74.741996766068,37.0220565806516

74.7491989145055,37.0214805616257

74.7692108154297,37.0256614702854

74.7718505859375,37.0269050617947

74.7776947040111,37.0296592720303

74.7827606210485,37.0320396441619

所以我在下面写了这段代码,但它对我没有用。

import turtle

import csv

import sys

def main():

    daniel = turtle.Turtle()    #Set up a turtle named "daniel"

    myWin = turtle.Screen()     #The graphics window

    t = open('CSV.csv')

    #Draw a square

    for i in t:
        daniel.forward(t[1])     #Move forward 10 steps

        daniel.right(t[0])        #Turn 90 degrees to the right


    myWin.exitonclick()         #Close the window when clicked

main()

【问题讨论】:

    标签: python csv turtle-graphics


    【解决方案1】:

    您使用了一些简单地绘制正方形的海龟代码,导入了一个 csv 阅读器模块但没有使用它,随机修改了代码,现在对它不起作用感到沮丧。让我们努力做得更好:

    import turtle
    import csv
    
    daniel = turtle.Turtle()  # Set up a turtle named "daniel"
    daniel.penup()
    
    with open('CSV.csv', newline='') as t:
        next(t)  # skip over column descriptions
    
        reader = csv.reader(t, quoting=csv.QUOTE_NONNUMERIC)  # turn unquoted values into floats
    
        for x, y in reader:
            daniel.goto(x, y)
            daniel.pendown()  # no-op after 1st iteration
    
    
    myWin = turtle.Screen()  # The graphics window
    
    myWin.exitonclick()  # Close the window when clicked
    

    这假设您的 CVS.cvs 数据是单行距,而不是您提供的双行距:

    x,y
    74.741996766068,37.0220565806516
    74.7491989145055,37.0214805616257
    74.7692108154297,37.0256614702854
    74.7718505859375,37.0269050617947
    74.7776947040111,37.0296592720303
    74.7827606210485,37.0320396441619
    

    此数据不会绘制任何内容,因为您的点实际上都是相同的,因为它们非常靠近 - 您可能需要缩放数据,或使用更多/不同的数据来查看任何实际绘图。

    【讨论】:

    • 是的。它现在正在工作,我理解了代码。现在是一个不同的问题,虽然它绘制了多边形边界,但屏幕很小,就像我只看到绘图一样。
    • @AAA,我不明白你的其他问题。也许你可以提供一个链接到你的整个一千个点,这样我就可以看到你所看到的。还要考虑这是否是一个完全不相关的问题,是否值得发表自己的 SO 帖子。
    猜你喜欢
    • 1970-01-01
    • 2023-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 2017-08-09
    相关资源
    最近更新 更多