我正在使用python,我遇到了以下问题:
我的数据是由三维点组成的,实际上可以制作一个简单的散点图。因此,我必须将数据“放入”网格中。
我是通过使用三维直方图(使用3D直方图还有其他优点)来实现这一点的:
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。
但要知道我想用这些切片做一个完整的三维图形。
我考虑了两种方法:
但我连一个都做不了!我可以做很多类似的任务,但没有任何东西能真正地用3D直方图来绘制我想要的图。
发布于 2014-04-04 16:36:39
您看过matplotlib的3D绘图功能吗?
下面是一个例子:demo.html
https://stackoverflow.com/questions/22867539
复制相似问题