Python 输出中缺少mplot3d窄样条曲线曲面
我已设置mplot3d,以根据示例提供3D曲面图。 当我绘制数据时,我看到穿过曲面的山脊缺少曲面(见图)。我注意到,表面填充似乎遵循步幅,但网格线使得在较低的步长下难以查看Python 输出中缺少mplot3d窄样条曲线曲面,python,matplotlib,Python,Matplotlib,我已设置mplot3d,以根据示例提供3D曲面图。 当我绘制数据时,我看到穿过曲面的山脊缺少曲面(见图)。我注意到,表面填充似乎遵循步幅,但网格线使得在较低的步长下难以查看 from mpl_toolkits.mplot3d import axes3d from matplotlib import cm, pyplot import numpy Z = data[-300::] X,Y = numpy.mgrid[:len(Z), :len(Z[0])] fig = pyplot.figur
from mpl_toolkits.mplot3d import axes3d
from matplotlib import cm, pyplot
import numpy
Z = data[-300::]
X,Y = numpy.mgrid[:len(Z), :len(Z[0])]
fig = pyplot.figure(figsize=(20, 10), dpi=800)
ax = fig.gca(projection='3d')
surf = ax.plot_surface(X,
Y,
Z,
rstride=len(Z)/5,
cstride=len(Z[0])/10,
alpha=.6,
linewidths=(.5,),
antialiased=True,
cmap=cm.coolwarm,
vmin=124,
vmax=186
)
cset = ax.contourf(X, Y, Z, zdir='z', offset=130, cmap=cm.coolwarm, vmin=124, vmax=186)
ax.set_xlim(len(Z) * 1.2, 0)
ax.set_ylim(0, len(Z[0]) * 1.2)
ax.elev = 25
ax.azim = 20
cb = fig.colorbar(surf, shrink=0.5, aspect=5)
有没有办法填充缺失的曲面?我发现实现这一点的唯一方法是将步幅设置为1,线宽设置为0。这样做的缺点是,我似乎丢失了网格覆盖
surf = ax.plot_surface(X,
Y,
Z,
shade=True,
rstride=1, cstride=1, linewidth=0,
linewidths=(.5,),
antialiased=True,
)