python check if figure is 2d or 3d

后端 未结 1 1269
滥情空心
滥情空心 2020-12-22 03:01

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,

相关标签:
1条回答
  • 2020-12-22 03:40

    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
    


    You can also check for the limits, as proposed in an answer to the question this is a duplicate of. In this way you would get the limits

    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
    
    0 讨论(0)
提交回复
热议问题