如何使用两点的x和y坐标绘制线?

时间:2015-10-20 15:14:04

标签: python python-3.x

我想知道如何使用两个二维点的x和y坐标绘制一条线。我尝试了龟图形,但它使用度数。

6 个答案:

答案 0 :(得分:4)

你可以使用pygame取决于你正在做什么,因为它允许类似的:

1.5.0

例如,在设置环境时:

line(Surface, color, (x1,y1), (x2,y2), width)

可以画:

Test line

答案 1 :(得分:3)

根据您对绘图的需求,您可以使用matplotlib

import matplotlib.pyplot as plt
plt.plot([x1,x2],[y1,y2])
plt.show()

答案 2 :(得分:2)

如果您已使用turtle,则可以使用Tkinter canva:

import Tkinter
x1, y1, x2, y2 = 10, 20, 30, 40
window = Tkinter.Tk()
canva = Tkinter.Canvas(window)
line = canva.create_line(x1, y1, x2, y2)
canva.pack()

答案 3 :(得分:2)

  

我尝试了龟图形,但它使用度数。

你的前提不成立 - 乌龟可以做到,不需要学位:

import turtle

point1 = (50, 100)
point2 = (150, 200)

turtle.penup()
turtle.goto(point1)
turtle.pendown()
turtle.goto(point2)

turtle.hideturtle()
turtle.exitonclick()

答案 4 :(得分:1)

您可以使用以下公式计算4个点的角度

angle = arctan((y2-y1)/(x2-x1))

只是一个警告,取决于您使用的数学库,这可能会以弧度输出。但是,您可以使用以下公式将弧度转换为度数。

deg = rad * (180/pi)

答案 5 :(得分:1)

仅出于完整性考虑,您还可以使用ImageDraw module of Pillow(Python图像库/ PIL分支)。这样,您就不需要窗口,而是可以将绘制的图像保存到文件中。

from PIL import Image, ImageDraw

im = Image.new('RGB', (100, 100))

draw = ImageDraw.Draw(im)
draw.line((0, 0) + im.size, fill=128)
draw.line((0, im.size[1], im.size[0], 0), fill=128)

im.save('test.png')