Matplotlib中的极坐标图不居中

时间:2018-04-01 18:48:12

标签: python python-3.x matplotlib polar-coordinates

出于某些原因,当我尝试使用以下代码绘制(theta = 0, r = 0)时:

import matplotlib.pyplot as plt

plt.polar(0, 0, marker='x')
plt.show()

这一点不集中:

polarplot with center

我能够在我的计算机和Repl.it上多次重现此错误:Link

那么,我怎样才能使极坐标图居中,以便x显示在它的中心?

2 个答案:

答案 0 :(得分:3)

它是“居中的”,但是半径从负值开始,在你的情况下约为-0.04。绘制完点后尝试设置rmin

import matplotlib.pyplot as plt

ax = plt.subplot(111, projection='polar')
ax.plot([0], [0], marker = 'x')
ax.set_rmax(5)
ax.set_rmin(0)
plt.show()

这会在半径为x的圆圈中间准确地显示一个小5

如果您使用许多有趣的值绘制多个点,通常不会出现此问题,因为它会将半径范围设置为更合理的默认值。

答案 1 :(得分:2)

这不是错误,您只需设置r轴的限制:

ax.set_rlim(0,2)

这给出了正确的结果

enter image description here