LOADING...

加载过慢请开启缓存(浏览器默认开启)

loading

2d_list_transpose_in_python

2022/12/9

python二维列表转置

有时候一些空间点数据,我会采用python做可视化

但是一般保存到txt后都是一行一个xyz,但plot却需要xyz三个列表

一般我都定义三个列表,然后分别储存,今天突然想到其实可以直接转置

用numpy又感觉大材小用了,所以尝试用二维列表实现

import matplotlib.pyplot as plt

with open(r"./1.txt","r") as f:
    datas = f.readlines()

# xyz_list: [[x1,y1,z1],[x2,y2,z2,],...]
xyz_list = []
for d in datas:
    xyz_list.append(list(map(float,d.strip().split(" "))))

# xyz [[x1,x2,...],[y1,y2,...],[z1,z2,...]]
xyz = list(map(list,zip(*xyz_list)))

ax = plt.axes(projection='3d')  # 设置三维轴
ax.scatter3D(*xyz)  # 三个数组对应三个维度(三个数组中的数一一对应)
plt.show()