我正在尝试连接单独绘制的点,但我想按照它们绘制的顺序连接它们。我有一个数字列表,指的是一组点(有序对)。该列表说明了点的绘制顺序。
这些点位于字典P
中。所以,让我们说P[1]
,P[2]
,P[3]
。然后是list = (2, 1, 3)
。我想绘制它,以便一行将P[2]
与P[1]
连接到P[3]
。其中P[i] = (x, y)
是一些带有x坐标x
和y坐标y
的连音符。
正如我现在所说,我正在使用循环绘制点。这有效,但它没有连接点。任何帮助都会很棒!谢谢。
x=[-4, 2, -1, 5]
y=[-3, -2, 4, 2]
n = 3 #number of cities
P = dict()
P_0 = (x[0],y[0])
for i in range (1,n):
P[i] = (x[i],y[i])
route = (2,1,3)
plt.plot([P_0[0]],[P_0[1]])
for k in range (0,n-1):
plt.plot([P[route[k]][0]],[P[route[k]][1]])
答案 0 :(得分:1)
在调用plot时,您需要提供x坐标作为列表,将y坐标作为单独的列表提供:
import matplotlib.pyplot as plt
x=[-4, 2, -1, 5]
y=[-3, -2, 4, 2]
plt.plot(x,y,'b-')
答案 1 :(得分:1)
这应该是一个合适的解决方案。
xnew=[x[i] for i in route]
ynew=[y[i] for i in route]
plt.plot(x,y)