如何从matplotlib一次导出一个图例标记?

2024-10-03 09:07:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个matplotlib图例,如下所示:

enter image description here

有什么简单的方法可以将标记导出为单独的.pdf文件?换句话说,我希望得到三个单独的.pdf,一个带有蓝色X,一个带有gold+,等等

最终我想做的是在一个LaTexFigure标题的内嵌图例中使用这些标记,但是我想我会在LaTexSE网站上询问这个部分。在


Tags: 文件方法标记标题pdfmatplotlib网站蓝色
1条回答
网友
1楼 · 发布于 2024-10-03 09:07:54

将图例控制柄导出到文件的方法是将创建的地物保存为pdf,但将其裁剪为感兴趣的部分。在

这可以通过在调用savefig中为bbox_inches参数指定一个边界框bbox

plt.savefig("file.pdf", dpi="figure", bbox_inches=bbox )

现在我们只需要找出要使用的边界框。这可以通过找到每个图例句柄的DrawingArea并将其边界框转换为以英寸为单位的坐标。这是在下面代码中的函数export_legend_handles中完成的。在

不幸的是,在编写代码时,我发现该标记可能确实超过了DrawingArea。由于我还没有找到自动查找DrawingArea之外句柄的实际大小的方法,因此可能需要手动将边界框扩展/缩小一些像素。为此,下面的函数有一个参数d,它允许设置这些像素偏移量,对于这个测试用例,我已经在其中输入了一些合适的值。在

^{pr2}$

这将产生如下图

enter image description here

并将图例句柄保存为pdf和png图像,如下所示

enter image description here

相关问题 更多 >