Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 从较大列表中列表中的数组元素创建坐标_Python 2.7_Matplotlib - Fatal编程技术网

Python 2.7 从较大列表中列表中的数组元素创建坐标

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列表,它是由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 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()