【问题标题】:meshgrid with 2d array as input以二维数组为输入的网格网格
【发布时间】:2015-08-16 10:52:29
【问题描述】:

我有一个二维浮点数组,每个单元格代表所述数组的列/行的幅度,并希望为其创建一个曲面图和轮廓。

如何在这个二维数组上使用网格网格?

对于这个简单的问题我深表歉意 - 我对 Python 和 numpy 都是新手。

【问题讨论】:

  • 你有一些样本数据吗?数据在 X 和 Y 方向上是连续的,还是代表一个潜在的稀疏表面,例如通过使用随机与系统采样策略对高程进行采样而获得的?
  • 谢谢。我的二维数组的列数/行数与​​ X、Y 向量之间存在差异。这是因为我跳过了我从中获取数据的 .CSV 文件的标题,其中所说的 CSV 没有标题。现在一切都已修复并运行良好。

标签: python numpy matplotlib


【解决方案1】:

这就是你要找的吗?

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm

# Generate fake data
x = np.linspace(-1, 1, 500)
y = np.linspace(-1, 1, 500)
X, Y = np.meshgrid(x, y)
Z = np.exp(-(X**2 + Y**2))

fig = plt.figure()
ax1 = fig.add_subplot(111, projection='3d')
ax1.plot_surface(X, Y, Z, alpha=0.05, color="w")
ax1.contour(X, Y, Z, zorder=10)

plt.show()

所有这些功能都在mplot3d tutorial中描述

【讨论】:

    猜你喜欢
    • 2022-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多