【问题标题】:Using surf to make a 3d imshow使用 surf 制作 3d imshow
【发布时间】:2015-04-15 17:09:12
【问题描述】:

我在理解 surf 的真正工作原理以及如何在我的上下文中使用它的方法时遇到了一些困难。我正在尝试使用 Mayavi 的 surf 来绘制 2D imshow() 的 3D 表示。我知道这是否是正确的路径,所以我也可以使用其他建议。

到目前为止,我基本上已经达到了这一点:data 是一个数组,其中包含对应于 x 和 y 坐标的值。因此,数据的形状是 (50L, 50L) 并且每个元素对应于我的 50*50 元素对的值。

imshow(data, cmap=cm.jet, origin='upper', interpolation=None) # My 2D imshow... working fine here.

# Trying to have a 3D representation
nx = linspace(0, 4, 50)
ny = linspace(0, 4, 50)
x_3d, y_3d = meshgrid(nx, ny)
s = surf(x_3d, y_3d, data)

脚本启动时没有错误,但是我在 Mayavi 场景中没有任何可视化。

感谢您的帮助,如果有人对如何绘制 2D imshow 的 3D 表示有更好的建议,我也很乐意接受。

【问题讨论】:

    标签: python 3d surf mayavi imshow


    【解决方案1】:

    您忘记了最后的mlab.show() 命令,并且 surf 需要三个参数我认为 x 和 y 只是您的点的位置,您需要第三个数组来确定 z 坐标。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-08
      • 1970-01-01
      • 1970-01-01
      • 2016-09-27
      • 1970-01-01
      • 2019-01-30
      相关资源
      最近更新 更多