вот код, который я использую, и я также приложил вывод.Я хотел бы построить двумерную функцию lognorm как трехмерную поверхность, вышеупомянутый код должен делать это, однако, результат приводит к перекосу всей плоскости, а не только значений z.любая помощь или предложения будут с благодарностью.
dx = 90 - (-90)
dy = 90 - (-90)
c = [dx + dx/2.0, dy+dy/2.0]
z = np.zeros((400, 400))
x = np.linspace(-90, 90, 400)
y = x.copy()
for i in range(len(x)):
for j in range(len(y)):
p =[x[i], y[j]]
d = math.sqrt((p[0]-c[0])**2 + (p[1]-c[1])**2)
t = d
z[i][j] = lognorm.pdf(t, 1.2)
fig = plt.figure()
ax = fig.add_subplot(111, projection = '3d')
ax.plot_surface(x,y, z, cmap = 'viridis')
plt.show()
вывод предоставленного кода
в идеале хотелось бы, чтобы это выгляделочто-то вроде этого. это изображение здесь