首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法用bbox_to_anchor更改图例位置

无法用bbox_to_anchor更改图例位置
EN

Stack Overflow用户
提问于 2020-10-19 06:32:47
回答 1查看 436关注 0票数 0

我正在从一个数据帧绘制数据,其中一些进入主-y-轴,另一个进入第二-y-轴。我分两步绘制,如下所示:

代码语言:javascript
复制
ax=data[['Energy (kWh)','Reactive Energy( kVArh)','CFE',"CFE'"]].plot(figsize=(12,8),xlim=('2020-08-01','2020-08-02'),title='Energy Plots vs. Time',grid=True)
ax2=data[['PF no Cap','Power Factor CRE CdR']].plot(secondary_y=True,ax=ax)

我有情节,轴标和我所需要的一切,但传说是错的。我希望它在情节之外,但是当我使用bbox_to_anchor时,会创建第二个图例,并且它只具有与ax2相关的标签(PF无上限,功率因数CRE CdR)。

我怎样才能把有着所有标签的传奇搬到我情节的外面呢?

在这里,我放置了整个代码和一些图片来说明这个问题:

代码语言:javascript
复制
data["CFE'"]=(data['Reactive Energy( kVArh)']-Qcap).clip_lower(0)
data['CFE']=(data['Reactive Energy( kVArh)']-Qcap)
data['PF no Cap']=np.cos(np.arctan(data['Reactive Energy( kVArh)']/data['Energy (kWh)']))
data['Power Factor CRE CdR']=np.cos(np.arctan((data['Reactive Energy( kVArh)']-Qcap_mod).clip_lower(0)/data['Energy (kWh)']))


ax=data[['Energy (kWh)','Reactive Energy( kVArh)','CFE',"CFE'"]].plot(figsize=(12,8),xlim=('2020-08-01','2020-08-02'),title='Energy Plots vs. Time',grid=True)
ax2=data[['PF no Cap','Power Factor CRE CdR']].plot(secondary_y=True,ax=ax)

ax.set(xlabel='Date',ylabel='Energy')
plt.legend(bbox_to_anchor=(1.3,0.7))

这就产生了以下情节:

看看有两个传说。我想把左边的那个移到右边的那个。

事先谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-19 07:34:09

plt.XXXX系列函数仅作用于当前轴,在本例中是ax2,因为它是最后创建的。我一开始以为调用ax.legend(...)会起作用,但这也不起作用,因为它只考虑来自那个轴的艺术家,而不是来自ax2的艺术家。

与重新创建图例不同,最简单的解决方案是使用ax.legend_.set_bbox_to_anchor(...)将现有图例移动到新位置。

代码语言:javascript
复制
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
df = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list('ABCD'))
df = df.cumsum()

ax=df[['A','B']].plot(title='Energy Plots vs. Time',grid=True)
ax2=df[['C','D']].plot(secondary_y=True,ax=ax)

ax.set(xlabel='Date',ylabel='Energy')
ax.legend_.set_bbox_to_anchor((1.3,0.7))
plt.tight_layout()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64422216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档