Окраска на поверхности питона
Я здесь новичок. Пожалуйста, будьте нежны. Я хочу нарисовать фигуру для своего проекта. Теперь я получаю 90% этого. Это фигура, которую я получил: Это тот, который я хочу: Я заметил, что на втором рисунке есть разница в цвете. Кажется, что цвет меняется в зависимости от угла. Я хочу, чтобы моя фигура выглядела так. Есть ли способ в Python, где я могу достичь этого? Я был бы очень признателен. Вот мой код:
import numpy as np
from matplotlib import cm, colors
import matplotlib.pyplot as plt
import scipy.special as sp
from mpl_toolkits.mplot3d import Axes3D
l = 3 # degree
m = 0 # order
phi, theta = np.mgrid[0:2*np.pi:300j, 0:np.pi:150j]
R0 = sp.sph_harm(m, l, phi, theta).real
alpha = 0.2
prefactor = R0*alpha + 1.
X = prefactor * np.sin(theta) * np.cos(phi)
Y = prefactor * np.sin(theta) * np.sin(phi)
Z = prefactor * np.cos(theta)
norm = colors.Normalize()
fig, ax = plt.subplots(subplot_kw=dict(projection='3d'), figsize=(10,12))
m = cm.ScalarMappable(cmap=cm.jet)
# hide the background axes
plt.axis('off')
# change the view
ax.view_init(1, )
ax.plot_surface(X, Y, Z, rstride=10, cstride=10, color = 'orangered', edgecolors='k')
m.set_array(R0)