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的绘图质量非常满意,这就是为什么我想找到解决此问题的方法。不管怎样,我还是要试试玛亚维。