Python 2.7 从较大列表中列表中的数组元素创建坐标
我有一个Beam_points列表,它是由3个元素数组组成的列表(例如,Python 2.7 从较大列表中列表中的数组元素创建坐标,python-2.7,matplotlib,Python 2.7,Matplotlib,我有一个Beam_points列表,它是由3个元素数组组成的列表(例如,Beam_points[2]=[array([1,2,3]),array([2,3,4])])。每个阵列列表都是波束中给定光线的点列表。我试图用以下方式绘制每个光束路径的z和y坐标: def plot(self): z_coords, y_coords = [], [] for list in self.Beam_points: z, y = [], [] for i in l
Beam_points[2]=[array([1,2,3]),array([2,3,4])]
)。每个阵列列表都是波束中给定光线的点列表。我试图用以下方式绘制每个光束路径的z和y坐标:
def plot(self):
z_coords, y_coords = [], []
for list in self.Beam_points:
z, y = [], []
for i in list:
z.append(i[2]), y.append(i[1])
z_coords.append(z), y_coords.append(y)
for z,y in zip(z_coords, y_coords):
plt.plot(z, y, color = "Blue")
plt.title('Beam Path')
plt.xlabel('z')
plt.ylabel('y')
plt.show()
尽管必须有一种更有效的方法来实现这一点?这需要相当长的时间来策划
谢谢。您可以使用
numpy
的更多功能,并且只使用一个循环来打印:
def plot(self):
ultra_beam_point = np.array(self.Beam_points)
for z,y in ultra_beam_point[:,:,1:]:
plt.plot(z, y, color = "Blue")
plt.title('Beam Path')
plt.xlabel('z')
plt.ylabel('y')
plt.show()