python - 3D 多面体在 2D 中的表示

标签 python r plot

我正在与多面体表示作斗争。
我有一组定义凸多面体的顶点(3D)。我想绘制它。
我可以轻松地以 3D 表示整个多面体或以 2D 表示它的投影。但是我找不到一个包(在 R 或 Python 中)以 2D 表示它,第三个组件由图中的颜色表示。
例如,如果我有这样一组顶点:

array([[0., 0., 0.],
       [1., 0., 0.],
       [0., 1., 0.],
       [1., 1., 0.],
       [0., 0., 1.],
       [1., 0., 1.]])
在 3D 中,您会得到:
Polytop plot generated by plotly
我想要的是 Z 轴的上包络线,它应该看起来像这样:
Contour plot generated with plotly
(当然减去轮廓......)。如果您有任何想法如何解决此表示问题,我会全力以赴!
谢谢

最佳答案

首先, reshape 数组,然后使用您喜欢的包进行绘图,例如。 seaborn 或 matplotlib:

import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

m = [[0., 0., 0.],
     [1., 0., 0.],
     [0., 1., 0.],
     [1., 1., 0.],
     [0., 0., 1.],
     [1., 0., 1.]]

data = np.asarray(m).reshape(3,6)[::-1]
sns.heatmap(data, cmap = 'jet')
#plt.imshow(data)
plt.xlabel('level 1')
plt.ylabel('level 2')
enter image description here
也许这会有所帮助!

关于python - 3D 多面体在 2D 中的表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62552825/

相关文章:

python - Facebook 评论正则表达式匹配

r - 如何读取带有时间戳字段的 csv?

r - 在Hadoop群集,Apache Mahout上运行建议或将R与Hadoop一起使用(通过hadoop流/RHIPE/RHadoop等),哪种方法更好?

python-3.x - 在 python3 中绘图(直方图)

javascript - D3.js(威尔金森型)点图示例

python - gpxpy : How to extract heart rate data from gpx file

python - 如何将Python列表作为column_name和值传递给MySQL插入语句

matlab - MATLAB 中 voronoi 图的彩色无界单元

python - pip 安装抛出 IOerror - no setup.py

删除数据框列表中的部分列名称 - R