繁体   English   中英

将图例放置在情节之外

[英]Placing the legend outside the plot

我想将图例放置在工程图框之外。 我找不到解决此问题的干净方法。 主要问题是所有内容都适合保存的文件。 我唯一能弄清楚的是这段代码:

#! /usr/bin/python
import matplotlib
# matplotlib.use('pdf')

from matplotlib.pyplot import *
subplot(111)
plot([1,2,3], label="test1")
l=legend(bbox_to_anchor=(1.05, 1), loc=2,borderaxespad=0)
tight_layout(rect=(0,0,0.8,1))
savefig('test.pdf')

有两个警告:

  1. 该tight_layout似乎与matplotlib.use('pdf')不兼容
  2. 通过tight_layout试验发现tight_layout的0.8。 如果我将label="test"替换为label="this is a very very long test" ,则图例将再次脱离文件的边界。 我希望可以自动调整。 我无法获取图例的大小。 l.get_frame().get_width()似乎总是返回1.0。
  3. tight_layout更改图的大小。 我要实现的是:以cm(或英寸)为单位指定图的大小。 将图例放置在情节之外。 拥有正确大小的文件以适合所有内容,包括图例; 无需诉诸试验和错误。

您可以查看Joe Kington这个问题的答案。 答案描述了有关图例放置的大多数选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM