Pyplot:圆类:arg轴的单位是什么?

时间:2019-01-20 17:55:43

标签: matplotlib

Pyplot对Circle类对象的半径大小使用什么单位?玩弄它,似乎半径为.6的屏幕已经几乎消失了……下面的小例子

import matplotlib as plt
plt.use('TkAgg')
import matplotlib.pyplot as plt
circle = plt.Circle((0.5, 0.5), 0.6, color='white')
fig, ax = plt.subplots()
plt.subplot
plt.axis('off')
ax.add_artist(circle)
fig.set_facecolor("black")

enter image description here

1 个答案:

答案 0 :(得分:1)

绝对单位用于半径。 0.6超出轴的原因是默认情况下,如果仅绘制空白图形,则其范围是从0到1。例如

fig, ax = plt.subplots()
ax.set_aspect('equal')

结果

enter image description here

现在,如果您将圆定在(0.5,0.5)的中心并且使用半径0.6,则圆会超出轴的范围,并且您会看到在问题中所看到的截断的补丁。

当您删除plt.axis('off')并使用 radius = 0.5

时,事情变得很清楚。
circle = plt.Circle((0.5, 0.5), 0.5, color='blue')
fig, ax = plt.subplots(figsize=(3,3))
# plt.axis('off') <--- commented out
ax.add_artist(circle)
fig.set_facecolor("gray")
ax.set_aspect('equal')
plt.plot([0.5], [0.5], 'ro')

enter image description here