In matlab with a figure, to check if it is 3D figure or 2D figure I use:
V=axis;
and check the number of components of V (4 for 2d figure,
You can use the name
of the axes.
plt.gca().name or ax.name
if ax
is the axes.
A 3D axes' name will be "3d"
. A 2D axes' name will be "rectilinear"
, "polar"
or some other name depending on the type of plot.
You can therefore check
if ax.name == "3d":
# axes is 3D, do something
else:
# axes is not 3D, do something else
def get_limits(ax):
xlim = ax.get_xlim()
ylim = ax.get_ylim()
if hasattr(ax, 'get_zlim'):
zlim = ax.get_zlim()
return xlim, ylim, zlim
else:
return xlim, ylim