在 matplotlib 的 3D 图中,默认的网格线由面板边框生成,而不是单独的网格线设置,因此直接使用 axs.grid(linestyle='--') 对 3D 图形的网格无效。
要修改 3D 图中格子线的样式,需要手动修改 grid lines 的线条属性。可以通过访问 Axes3D 中的 ax.xaxis._axinfo['grid'], ax.yaxis._axinfo['grid'], ax.zaxis._axinfo['grid'] 属性来设置网格线的线型。
例:
# 设置网格线为虚线
axs.xaxis._axinfo['grid'].update({'linestyle': '--', 'linewidth': 0.5})
axs.yaxis._axinfo['grid'].update({'linestyle': '--', 'linewidth': 0.5})
axs.zaxis._axinfo['grid'].update({'linestyle': '--', 'linewidth': 0.5})