小编Tri*_*rii的帖子

根据顶点绘制3D连接的棱镜matplotlib

我有一组来自 4-6个向量的坐标x,y,z。我想绘制相应的棱镜。但是我的线是交叉的,根本看起来不像是棱镜。

我假设我必须对数据集进行排序,但是我不确定如何或是否正确答案。

我的情节

这显然是错误的:

错误的交叉棱镜图

理想棱镜

这看起来应该是这样的:

矩形棱柱图

3坐标数据集的真实棱镜

用于3c数据集的3D棱镜

脚本

from matplotlib import pyplot as plt
from mpl_toolkits.mplot3d.art3d import Poly3DCollection, Line3DCollection
import numpy as np

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
p = np.array([[-43.11150999, -118.14365791, -1100.99389988],
                [-27.97693445,-124.54828379, -1089.54038197],
                [-55.99892873, -120.42384095, -1084.32576297],
                [-40.75143664, -133.41566716, -1077.33745869],

              [-43.2165748, -34.770722, -1030.85272686],
              [-27.89568594, -43.06953117, -1021.03437003],
              [-56.072327, -44.66085799, -1019.15166512],
              [-40.75143814, -52.95966716, -1009.3333083]])

ax.scatter3D(p[:, 0], p[:, 1], p[:, 2])

x = np.array([[-43.11150999], [-27.97693445], [-55.99892873], [-40.75143664], [-43.2165748],[-27.89568594],[-56.072327],[-40.75143814]])
y = np.array([[-118.14365791], [-124.54828379], [-120.42384095], [-133.41566716], [-34.770722],[-43.06953117],[-44.66085799],[-52.95966716]])
z …
Run Code Online (Sandbox Code Playgroud)

python matplotlib

5
推荐指数
1
解决办法
259
查看次数

标签 统计

matplotlib ×1

python ×1