在 python 中绘制 3D 图形

Plot 3D figure in python

假设我有一个一维数组 X = ([1, 2, 3]),对于 X 中的每个元素,我们都有一个对应的二维图。

例如,我们有一个函数z=f(y, X),X是这个函数中的一个参数,当我们取与X不同的值时,我们有不同的二维图。

所以我想做的是在一个图中绘制它,它是一种 3D 图,我们有三个轴,一个是 X,一个是 y,一个是 z=f(y, X) ,那么这个图怎么画呢?

谢谢。 PS:I 已上传图片。我要画的就是这种图

创建子图网格应该有所帮助:

import matplotlib.pyplot as plt
import numpy as np
x = np.arange(10)-5
Ys = np.array([x**i for i in range(5)])
plt.figure(figsize=(12, 2))
for i, y in enumerate(Ys):
    plt.subplot(1, len(Ys), i+1)
    plt.plot(x, y)
    plt.title('x^%d' % i)
plt.tight_layout()

我在示例中使用 plt.tight_layout(),但您可能需要考虑将其删除并改用 plt.subplots_adjust。 x-labels(x^0、x^1 等)在我的示例中通过给每个子图一个标题来放置,但您可能需要考虑使用 plt.figtext() 手动将它们放置在确切位置你要。最后,检查http://matplotlib.org/users/gridspec.html一些更酷的次要情节安排。