python matplotlib补丁剧情出错

时间:2017-10-16 16:06:33

标签: python matplotlib

我试图用python绘制一个矩形。出了点问题,但我无法弄清楚是什么。

以下是代码:

import matplotlib.pyplot as plt
import matplotlib.patches as patches

box=[1,3,5]
box_pos=[0,30,4]

fig, ax = plt.subplots()
ax.add_patch(
    patches.Rectangle(
        (box_pos[0], box_pos[1]),   # (x,y)
        box[0],          # width
        box[1],          # height
    )
)

ax.set_aspect(aspect='equal', adjustable='box')
plt.show()

你知道我能做些什么来解决它吗?

1 个答案:

答案 0 :(得分:0)

patches添加到matplotlib Axes时,它不会像其他绘图类型一样自动设置轴限制,因此您的限制设置为默认值{{1}在x和y中,你的矩形超出了这些限制。

您有几个选择:

  1. (0, 1)之前使用ax.autoscale()让matplotlib自动设置轴限制
  2. enter image description here

    1. 如果您想要更多控制权,可以在plt.show()之前使用ax.set_xlim()ax.set_ylim()手动设置轴限制,例如:

      plt.show()
    2. enter image description here