Python 重叠极坐标和散点图

Python 重叠极坐标和散点图,python,matplotlib,contour,Python,Matplotlib,Contour,由于这非常有用,我终于想出了如何制作一个极坐标填充的等高线图。然而,当我进入下一步并试图在同一个图中添加分散点时,我遇到了一些问题。以下是原始脚本: 将numpy导入为np 将matplotlib.pyplot作为plt导入 #--生成数据----------------------------------------- #使用linspace以便包含360的端点。。。 方位角=np弧度(np邻域(0,360,20)) 天顶=np.arange(0,70,10) r、 θ=np网格(天顶、方位角

由于这非常有用,我终于想出了如何制作一个极坐标填充的等高线图。然而,当我进入下一步并试图在同一个图中添加分散点时,我遇到了一些问题。以下是原始脚本:

将numpy导入为np
将matplotlib.pyplot作为plt导入
#--生成数据-----------------------------------------
#使用linspace以便包含360的端点。。。
方位角=np弧度(np邻域(0,360,20))
天顶=np.arange(0,70,10)
r、 θ=np网格(天顶、方位角)
值=np.random.random((方位角大小、天顶大小))
#--情节------------------------------------------------
图,ax=plt.子批次(子批次_kw=dict(投影=极坐标))
最大轮廓f(θ、r、值)
plt.show()
这张照片是由谁拍摄的:

如果我还添加散点图:

#--绘图------------------------------------------------
图,ax=plt.子批次(子批次_kw=dict(投影=极坐标))
最大轮廓f(θ、r、值)
最大散射(np弧度(140),40,s=20,c='白色')
我得到的是这样的图像:

为什么在填充的轮廓和轴之间有厚厚的白色边界?我怎样才能摆脱它


多谢各位

Ops,对不起,在a问了我的问题两分钟后,我想到了答案。我刚刚意识到添加散点图会以某种方式改变轴的限制。将轴强制到所需的间隔可以解决问题

fig, ax = plt.subplots(subplot_kw=dict(projection='polar'))
ax.contourf(theta, r, values)
ax.scatter([np.radians(140)], [40], s=20, c='White')
ax.set_rmax(60)
ax.set_rmin(0)


我想我可以把这个问题留着不管怎样,它仍然可以对其他用户有所帮助。

+1发生的事情是,
ax.scatter
使用“松散”自动缩放(即,它选择偶数作为轴限制),而
ax.contourf
使用“紧密”自动缩放(即,它严格使用数据限制)。您可以在调用
contourf
之后和调用
scatter
之前调用
ax.autoscale(False)
,而不是手动设置限制。