Python 在matplotlib中的曲面上叠加直线

Python 在matplotlib中的曲面上叠加直线,python,matplotlib,Python,Matplotlib,我一直试图在曲面上叠加一条线,但我有一个小问题。有些视图点中的直线不可见。例如,尝试打印由以下代码生成的曲面: from matplotlib import cm import matplotlib.pyplot as plt import numpy as np from mpl_toolkits.mplot3d import axes3d, Axes3D import pylab as p import matplotlib.ticker as ticker from matplotlib

我一直试图在曲面上叠加一条线,但我有一个小问题。有些视图点中的直线不可见。例如,尝试打印由以下代码生成的曲面:

from matplotlib import cm
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import axes3d, Axes3D
import pylab as p
import matplotlib.ticker as ticker 
from matplotlib.colors import LightSource

vima=0.2

def fun(x, y):
  return x**3 + y

fig = plt.figure()
ax = fig.gca(projection='3d')
X = np.arange(0.1, 50, vima)
Y = np.arange(0.1, 10.2, vima)
X, Y = np.meshgrid(X, Y)

Z=fun(X,Y)

surf = ax.plot_surface(X, Y, Z,rstride=25, cstride=75, alpha=1, color='0.8',  linewidth=0.2, shade=True)

Y=(10.0-0.2*X)/0.9798
Z=Z*0
ax.plot_surface(X,Y,Z)
ax.grid(on=True)
ax.view_init(elev=34,azim=-106)

Z=fun(X,Y)
ax.plot_surface(X,Y,Z)#, linewidth=1)

ax.w_xaxis.set_major_locator(ticker.NullLocator()) 
ax.w_yaxis.set_major_locator(ticker.NullLocator()) 
ax.w_zaxis.set_major_locator(ticker.NullLocator()) 


ax.set_xlabel('$x$')

ax.set_ylabel('$y$')
ax.set_zlabel('$z$')


fig.suptitle('b', fontsize=14)

plt.show()
我假设你可以看到表面,xy平面上的一条线和叠加在表面上的一条线。但如果旋转此绘图,您将发现某些视点的叠加线不可见

有没有办法克服这个小错误


提前感谢

据我所知,这是matplotlib中3d打印的一个限制。或者,您可以尝试使用matplotlib,我对matplotlib的绘图质量非常满意,这就是为什么我想找到解决此问题的方法。不管怎样,我还是要试试玛亚维。