首页 > 解决方案 > 用 pyplot 绘制二维数组

问题描述

我有两个一维数组 x 和 t 在这个网格上创建一个网格和二维数组 z。
z[i][j]代表z(t[i], x[j])。如何用pyplot绘制这个表面?

标签: pythonmatplotlib

解决方案


从一维数组开始,创建一个二维网格,并使用plt.surface().

# Make sure all necessary libraries are loaded
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np

# Initialize 3d figure
fig = plt.figure()
ax = fig.gca(projection='3d')

# create meshgrid
T, X = np.meshgrid(t, x)

# plot
ax.plot_surface(T, X, Z)

您可以在matplotlib 示例中看到更复杂和完整的曲面图示例


推荐阅读