如何在matplotlib中检查ax是否是极坐标投影?

O.r*_*rka 5 python matplotlib cartesian

是否有一个属性fig可以ax指示轴的投影是否是极坐标?

我正在尝试在一个更复杂的函数中创建一个基本的嵌套函数,该函数本质上具有以下功能:

is_polar(ax):
    return ax.some_attribute
Run Code Online (Sandbox Code Playgroud)

不过,我不确定这是否可能,因为我已经查看了其明显的属性。我想在进行详尽的手动搜索之前我应该​​联系社区。

# Source | https://matplotlib.org/gallery/pie_and_polar_charts/polar_scatter.html
# Fixing random state for reproducibility
np.random.seed(19680801)

# Compute areas and colors
N = 150
r = 2 * np.random.rand(N)
theta = 2 * np.pi * np.random.rand(N)
area = 200 * r**2
colors = theta

fig = plt.figure()
ax = fig.add_subplot(111, projection='polar')
c = ax.scatter(theta, r, c=colors, s=area, cmap='hsv', alpha=0.75)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Wil*_*ler 5

ax.name您可以根据matplotlib 轴文档使用 检查投影。这包含作为字符串的投影,因此您可以简单地执行以下操作

if ax.name == 'polar':
    # ....
Run Code Online (Sandbox Code Playgroud)