首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bbox_to_anchor()函数的参数

bbox_to_anchor()函数的参数
EN

Stack Overflow用户
提问于 2016-12-01 11:03:50
回答 2查看 12.8K关注 0票数 6
代码语言:javascript
复制
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(10)

fig = plt.figure()
ax = plt.subplot(111)

for i in xrange(5):
    ax.plot(x, i * x, label='$y = %ix$' % i)

ax.legend(bbox_to_anchor=(1.1, 1.05))

plt.show()

在上面的代码中,我使用了函数bbox_to_anchor,它将图例放置在任意位置。我无法理解函数的前两个论证,所有的公式都说是归一化的轴参数。有谁能解释一下他们是什么以及如何操纵他们?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-12-01 12:37:35

它不是一个函数,而是一个关键字参数。

摘要:您可以使用loc指定图例的一个角,也可以使用bbox_to_anchor指定该角的位置。默认情况下,图例的指定角将放置在轴的同一角上。

例如,loc='upper right'只将图例的右上角放置在轴的右上角:

代码语言:javascript
复制
ax.legend(loc='upper right')

但是,如果您希望图例的右上角位于轴的中间左侧,则可以使用bbox_to_anchor=(0, 0.5)

代码语言:javascript
复制
ax.legend(loc='upper right', bbox_to_anchor=(0, 0.5))

票数 8
EN

Stack Overflow用户

发布于 2016-12-01 11:35:26

试着用这些参数来理解-

代码语言:javascript
复制
ax.legend(bbox_to_anchor=(0,0))

给了这个-

它把传说放在左下角。现在假设我想把它放在右上角,我会这样做的

代码语言:javascript
复制
ax.legend(bbox_to_anchor=(1,1))

会得到-

因此,基本上,这两个参数操作图例框的位置,相对于它们的出现位置-

如果我把第一个数字设为0,传奇就在最左边。如果我把它设为1,它就会在极右。

如果我将第二个数字设置为0,则将图例框放在极端底部,并将其设置为1,将其放置在顶部。

例如,如果我希望我的图例框位于右下角,我会将这些参数设置为(1,0)。

在0和1之间设置一个数字将精确地操作该位置。

所以如果我设定(0.5,0.5),它会在中间的某个位置,这个定位发生在轴上。这就是为什么在文档里这样写的原因。

希望这能把它弄清楚!

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

https://stackoverflow.com/questions/40908983

复制
相关文章

相似问题

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