0

我目前有一个热图,它是一个 2D 浮点矩阵(要准确的浮点列表列表),我可以很容易地用 matplotlib 以 2D 显示它,但我想在 3D 图中显示它,这样列和行索引可以分别由 X 和 Y 值,矩阵中的值是 Z(高程)值。我可以用什么来做到这一点?我尝试使用 Axes3D,但它似乎不太合适(或者我用错了?)。我想做的在概念上非常简单,假装矩阵是 DEM 并显示它。

此外,如果可能的话,我希望能够即时更改视角,而无需重新生成绘图。

有任何想法吗?

这两个问题是相关的,但不能完全回答我的问题:

使用 python 进行 3D 绘图

Python:来自 2D 图像的 3D 轮廓 - pylab 和 contourf

注意:浮点矩阵相当大,通常为 100x100 或更大,上次我尝试在 3D 中绘制它时,我的系统内存不足并开始抖动。

4

1 回答 1

1

您的用例似乎是为 mayavi/mlab 量身定制的,它的功能完全符合您的要求,默认情况下允许交互式 3D 旋转:

import numpy as np; from mayavi import mlab
data = np.random.random((100,100))
mlab.surf(data)
mlab.show()
于 2013-06-19T14:27:24.420 回答