首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >利用三维直方图矩阵生成三维图形

利用三维直方图矩阵生成三维图形
EN

Stack Overflow用户
提问于 2014-04-04 15:56:02
回答 1查看 797关注 0票数 0

我正在使用python,我遇到了以下问题:

我的数据是由三维点组成的,实际上可以制作一个简单的散点图。因此,我必须将数据“放入”网格中。

我是通过使用三维直方图(使用3D直方图还有其他优点)来实现这一点的:

代码语言:javascript
复制
import numpy as np
"""Where x,y,z are given and binx,biny,binz are calculated some steps before""" 
values = np.column_stack((x,y,z))
H, edges = np.histogramdd(values, bins=(binx,biny,binz))

因此,现在我有一个维数的“矩阵”H (binx,biny,binz)。我认为它是二维直方图的切片,它们被堆叠在z-dircetion中(数量是binz)。

所以我可以用Axes3D把它们绘制成一个三维立方体,在z轴上有一个单一的二维直方图。就像这样:3D-Stacked 2D histograms in matplotlib pyplot

但要知道我想用这些切片做一个完整的三维图形。

我考虑了两种方法:

  • 利用这些直方图(用高斯平滑)绘制三维密度图,并用mayavi绘制这幅图。
  • 或者另一种可能性(我不喜欢),只有在三维网格中绘制2D直方图的单元格和颜色才能表示单元格中的“实点”数。

但我连一个都做不了!我可以做很多类似的任务,但没有任何东西能真正地用3D直方图来绘制我想要的图。

EN

回答 1

Stack Overflow用户

发布于 2014-04-04 16:36:39

您看过matplotlib的3D绘图功能吗?

下面是一个例子:demo.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22867539

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档