我在scipy/numpy中有一个Nx 3矩阵,我想用它制作一个三维条形图,其中X轴和Y轴由矩阵的第一列和第二列的值确定,每个条形的高度是矩阵的第三列,条形的数量由N确定。
换句话说,如果“数据”是矩阵,则:
data[:, 0] # values of X-axis
data[:, 1] # values of Y-axis
data[:, 2] # values of each Z-axis bar
并且每个镜头(数据)应该有一个条
我如何在Matplotlib中做到这一点?
第二,作为一个变体,我如何做同样的事情,但这次直方图的酒吧到N箱在每个X,Y,Z维?也就是说,不是每个点的条形图,而是将数据直方图化到每个维度中的那些箱中,并为每个箱绘制条形图。
2条答案
按热度按时间pvabu6sv1#
这是一个3D条形图的例子。Here is another。
Numpy有一个名为histogram2d的函数来完成你想要的矩形装箱。
yv5phkfx2#
我很难从示例中正确地塑造数据的“高度”,但最终让它与下面的代码一起工作。这里,Z是一个包含所有数据的三维数组,x和rval基本上是对应于数据点的二维索引。