首页 > 解决方案 > python - 在绘图下方添加长文本并将其保存为 pdf 的最佳方法

问题描述

我有一大组照片,其中我在每张照片中检测到几个物体。我想创建一个 pdf,包括所有照片和已识别对象的名称,写在每张照片的下方(而不是内部)。由于有很多照片有很多对象,我无法将其写在照片中或使用图例/轴名称来包含它们。对于这个问题,你会建议什么作为 python 或其他语言的最佳方法/库?

标签: pythonmatplotlibplotcomputer-vision

解决方案


@Entropie_13,只是在这里用一个例子来解决你的评论。您可以使用textmatplotlib 中的函数将任意长度的文本放在图中的任何位置。下面是一个在图的每一侧都有文本的示例。

import matplotlib.pyplot as plt
import numpy as np
fig=plt.figure()
N_points=10
x=np.arange(N_points)
y=np.arange(N_points)
plt.plot(x,y)
plt.xlabel('x-axis')
plt.ylabel('y-axis')
text_example='Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\n Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. \n Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.\n Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'
plt.text(-3,-8,text_example)
plt.text(-25,3.5,text_example)
plt.text(-3,16,text_example)
plt.text(25,3.5,text_example)
plt.savefig('fig_caption.pdf')

代码将图形保存为 pdf,输出如下所示:

在此处输入图像描述


推荐阅读