首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将matplotlib图例移动到轴外将使其被图形框截断

将matplotlib图例移动到轴外将使其被图形框截断
EN

Stack Overflow用户
提问于 2012-04-11 15:32:09
回答 3查看 194.3K关注 0票数 259

我熟悉以下问题:

Matplotlib savefig with a legend outside the plot

How to put the legend out of the plot

似乎这些问题中的答案都可以随意调整轴的精确收缩,以便与图例相吻合。

然而,缩小轴并不是一个理想的解决方案,因为它会使数据变得更小,实际上更难解释;特别是当它很复杂,有很多事情在发生时……因此需要一个大的图例

文档中复杂图例的示例演示了这种需要,因为它们图中的图例实际上完全遮挡了多个数据点。

http://matplotlib.sourceforge.net/users/legend_guide.html#legend-of-complex-plots

我想要做的是动态扩展数字框的大小,以适应不断扩展的数字图例。

代码语言:javascript
复制
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(-2*np.pi, 2*np.pi, 0.1)
fig = plt.figure(1)
ax = fig.add_subplot(111)
ax.plot(x, np.sin(x), label='Sine')
ax.plot(x, np.cos(x), label='Cosine')
ax.plot(x, np.arctan(x), label='Inverse tan')
lgd = ax.legend(loc=9, bbox_to_anchor=(0.5,0))
ax.grid('on')

注意最后的标签“反转黄褐色”实际上在图框外(而且看起来很糟糕--不是出版质量!)

最后,我被告知这是R和LaTeX中的正常行为,所以我有点困惑为什么这在python中这么难……有没有历史原因?在这个问题上,Matlab也同样糟糕吗?

我在pastebin http://pastebin.com/grVjc007上有这个代码的(只有一点点)更长的版本

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

https://stackoverflow.com/questions/10101700

复制
相关文章

相似问题

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