我正在寻找用于以下目的的正确数据结构。我想在两点之间绘制一条线,以获得多组点。
例如,要在(-1,1)和(12,4)之间绘制一条线,我可以这样做:
import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots(1,1)
x1 = [-1, 12]
y1 = [1, 4]
ax.plot( x1, y1 )
plt.show()
如果要绘制另一条连接两个不同点的线(与第一组点无关),请执行以下操作:
x2 = [1, 10]
y2 = [3, 2]
ax.plot( x1, y1, x2, y2 )
plot.show()
该如何扩展?也就是说,我应该使用什么数据结构来表示由输入数据生成的不断增长的此类点[x1,y1,x2,y2,...]的数组?
我尝试了以下方法,
points = [x1, y1, x2, y2]
ax.plot( points )
但是情节最终将所有单独的线与我不需要的线连接起来。
答案 0 :(得分:1)
您很亲密:
ax.plot(*points)
星号运算符*
将可迭代(在您的情况下为列表)转换为功能参数序列。