在python中将形状从nL,1L更改为nL

时间:2018-11-22 23:54:00

标签: python 2d shapes

我有3个坐标列表(xs,ys,zs),调用shape(xs)给出(14897L,),但是在对数据执行一些旋转后,形状变为(14897L,1L)。这会破坏代码中的某些内容,我无法解决该问题。

我正在做的事情的细节可能并不重要,但是为了防万一,我已经将其包括在内

Rot_theta = np.pi        
xyz = np.matrix((xs, ys, zs))
Rot_x = np.matrix([[1, 0, 0], [0, np.cos(Rot_theta), -np.sin(Rot_theta)], [0,np.sin(Rot_theta),np.cos(Rot_theta)]])
Rot_y = np.matrix([[np.cos(Rot_theta), 0, np.sin(Rot_theta)], [0, 1, 0], [-np.sin(Rot_theta),0,np.cos(Rot_theta)]])
Rot_z = np.matrix([[np.cos(Rot_theta), -np.sin(Rot_theta), 0], [np.sin(Rot_theta), np.cos(Rot_theta), 0], [0,0,1]])

xyz_Rot =[]
for i in range(n):
    xyz_no = Rot_x*xyz[:,i]
    xyz_Rot.append((xyz_no))

xyz_Rot = np.array((xyz_Rot))

xs = xyz_Rot[:,0]
ys = xyz_Rot[:,1]
zs = xyz_Rot[:,2]

我不知道为什么xs,ys和zs现在都为形状(14897L,1L)。我如何应用旋转矩阵有问题吗? 似乎应该有一两行来解决这个问题,但我只是想不通。

0 个答案:

没有答案