gpt4 book ai didi

python - 表面,其中高度是两个函数的函数,以及第三个函数的总和

转载 作者:太空宇宙 更新时间:2023-11-03 17:19:51 27 4
gpt4 key购买 nike

假设我有一个函数,例如:

equation

现在,我想绘制它的曲面图(matplotlib plot_surface )。我使用 np.arange(stop,end,increment) 构造了三个数组。

在这里,我被困住了。我不想使用 for 循环,因为我认为我应该能够用 np.sum 解决这个问题.

但是,我不知道如何构造该函数。理想情况下,它可以构造为 f(x,y,k)我会使用 f(x,y) = np.sum(f(x,y,k), k)

我想不出解决办法。

最佳答案

我不想胡乱猜测你想做什么,但这里有一个说明性的例子:

import numpy as np

x = np.random.rand(100)
y = np.random.rand(100)
k = np.arange(1, 11)

# define f_k = (x + y)^k
fk = lambda xx, yy, kk: (xx + yy)**kk

那么,

X, Y, K = np.meshgrid(x, y, k)
# sum over k after evaluating f_k
f = fk(X, Y, K).sum(axis=-1)

f.shape
# (100, 100)

最后,

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

ax.plot_surface(X[...,0], Y[...,0], f)
plt.show()

或者,你也可以这样做

X, Y = np.meshgrid(x, y)
ax.plot_surface(X, Y, f)
plt.show()

关于python - 表面,其中高度是两个函数的函数,以及第三个函数的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33284897/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com