Трехмерная поверхность Python matplotlib

Я пытаюсь преобразовать уравнение для поверхностного графика, написанного для математики (изображение и сценарий ниже), в скрипт python с использованием matplotlib. В Интернете есть только несколько примеров поверхностных графиков.

введите описание изображения здесь

Помощь была бы оценена для моей неработающей одной из многих попыток

from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt import numpy as np fig = plt.figure() ax = fig.add_subplot(111, projection='3d') x = np.linspace(2,-2) y = np.linspace(2,-2) z = np.linspace(2,-2) surfx = -1 * (pow(y, 10) + pow(z, 10) - 100) surfy = -1 * (pow(x, 10) + pow(z, 10) - 100) surfz = -1 * (pow(x, 10) + pow(y, 10) - 100) ax.plot_surface(surfx,surfy,surfz, rstride=4, cstride=4, color='b') plt.show() 

Я не думаю, что matplotlib имеет эквивалентную функцию в этой точке. Если вы не ограничены использованием matplotlib, вы можете взглянуть на майави и его contour3d() .

Следующий код создает аналогичный график в вашем примере с помощью mayavi. Я не уверен, что можно добавить схему каркаса.

 import numpy as np from mayavi import mlab x, y, z = np.ogrid[-2:2:25j, -2:2:25j, -2:2:25j] s = np.power(x, 10) + np.power(y, 10) + np.power(z, 10) - 100 mlab.figure(bgcolor=(1,1,1)) mlab.contour3d(s, contours=[2], color=(.5,.5,.5), transparent=True, opacity=.5) ax = mlab.axes(nb_labels=5, ranges=(-2,2,-2,2,-2,2)) ax.axes.property.color = (0,0,0) ax.axes.axis_title_text_property.color = (0,0,0) ax.axes.axis_label_text_property.color = (0,0,0) ax.axes.label_format='%.0f' mlab.show() 

майанский контур3d участок