小编Cal*_*ris的帖子

Matplotlib:调整图例位置/位置

我正在创建一个包含多个子图的图形.其中一个子图给我带来了一些麻烦,因为没有任何轴角或中心可以自由(或者可以释放)来放置图例.我想做的是将图例放在"左上"和"左中"位置之间的某处,同时保持它与y轴之间的填充等于其他子图中的图例(即使用其中一个预定义的图例位置关键字放置.

我知道我可以通过使用指定自定义位置loc=(x,y),但是我无法弄清楚如何使图例和y轴之间的填充等于其他图例所使用的填充.是否有可能以某种方式使用borderaxespad第一个传奇的属性?虽然我没有成功地让它发挥作用.

任何建议都是最受欢迎的!

编辑:这是一个(非常简化)问题的插图:

import matplotlib.pyplot as plt

fig, ax = plt.subplots(1, 2, sharex=False, sharey=False)
ax[0].axhline(y=1, label='one')
ax[0].axhline(y=2, label='two')
ax[0].set_ylim([0.8,3.2])
ax[0].legend(loc=2)

ax[1].axhline(y=1, label='one')
ax[1].axhline(y=2, label='two')
ax[1].axhline(y=3, label='three')
ax[1].set_ylim([0.8,3.2])
ax[1].legend(loc=2)

plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我想要的是右图中的图例稍微向下移动,因此它不再与线重叠.作为最后的手段我可以改变轴限制,但我非常想避免这种情况.

python plot position matplotlib legend

12
推荐指数
2
解决办法
4万
查看次数

标签 统计

legend ×1

matplotlib ×1

plot ×1

position ×1

python ×1