我可以将现有的 ax 对象转换为 3D 投影吗?



我用plt.subplots(nrows = 2, ncols = 2)创建了一些轴。 我想ax[1,1]制作一个 3D 轴,这样我就可以制作这样的情节。

无论如何我可以将现有的斧头对象变成 3d 斧头吗?

否,因为 3D 轴是matplotlib.axes._subplots.Axes3DSubplot对象,而常规轴是matplotlib.axes._subplots.AxesSubplot对象。

因此,这不仅仅是更改现有对象的一个属性的情况,因为它是当您add_subplot(projection='3d')时创建的完全不同的对象。

我认为您必须明确创建子图,例如:

fig=plt.figure()
ax1=fig.add_subplot(2,2,1)
ax2=fig.add_subplot(2,2,2)
ax3=fig.add_subplot(2,2,3)
ax4=fig.add_subplot(2,2,4,projection='3d')

或者,删除 2D 轴并将其重新添加为 3D 轴:

fig,ax = plt.subplots(nrows = 2, ncols = 2)
ax[1,1].remove()
ax[1,1]=fig.add_subplot(2,2,4,projection='3d')

最新更新