我知道 bbox _ to _ 壁虎关键字和这个线程,它非常有帮助地建议如何手动放置图例:
然而,我希望在图中使用我的 x 轴和 y 轴的坐标来指定图例位置(在图中) ,因为我可能需要将图形移动到一个具有不同轴环境的大图中,而且我不想每次这样做时都要手动处理这些坐标。这可能吗?
编辑: 这里有一个小例子:
import numpy as n
f, axarr = plt.subplots(2,sharex=True)
axarr[1].set_ylim([0.611,0.675])
axarr[0].set_ylim([0.792,0.856])
axarr[0].plot([0, 0.04, 0.08],n.array([ 0.83333333, 0.82250521,0.81109048]), label='test1')
axarr[0].errorbar([0, 0.04, 0.08],n.array([ 0.8, 0.83, 0.82]),n.array([0.1,0.1,0.01]), label='test2')
axarr[1].plot([0, 0.04, 0.08],n.array([ 0.66666667, 0.64888304, 0.63042428]))
axarr[1].errorbar([0, 0.04, 0.08],n.array([ 0.67, 0.64, 0.62]),n.array([ 0.01, 0.05, 0.1]))
axarr[0].legend(bbox_to_anchor=(0.04, 0.82, 1., .102),labelspacing=0.1, handlelength=0.1, handletextpad=0.1,frameon=False, ncol=4, columnspacing=0.7)
我认为让我困惑的是图例并不是从0.82开始的,而且对于我的更大的图(有5个这种类型的子图) ,我需要使用图例坐标 bbox _ to _ Anchor= (0.04,1.15,1)。为了使图例显示在坐标(0.02,0.83)上。但也许我还做错了什么?