绘制会议海报(立即增加文本大小,线宽,...)

时间:2014-03-13 17:16:37

标签: python matplotlib poster

在Python中使用pylab(matplotlib),我想为scientifc会议海报制作情节。但是,使用合适的dpi分辨率和正确的英寸/厘米大小,图表的所有元素都太小而无法打印大。对于A0格式的海报,图像大约为30厘米x 20厘米,而对于标准A4页面则不是15厘米×10厘米。

现在我想避免单独研究和调整所有绘图属性,如文本大小(轴,刻度,图例),线宽,刻度尺寸等。基本上我想放大所有属性,好像我已经用标准设置保存了图,但后来放大了整个图像(没有像素化)。

这样的大型平面媒体是不是有预设?或者也许有人可以提供代码片段来设置所有相关属性。

谢谢。

1 个答案:

答案 0 :(得分:1)

如果将图形保存为pdf,(或svg或任何其他矢量图形格式),那么它将无限缩放而不会出现任何“像素化”,因为矢量图形没有像素。

假设你不想为了比例(而不是图像分辨率)而改变相对字体大小,它就像这样简单:

plt.savefig('figures/figname.pdf')

如果您想通过一步更改字体的整体比例,可以使用figsize,这会更改图形的大小,而不会更改其任何部分的大小(文本,标记,线宽)

plt.figure(figsize=(8,6)) # (width, height)

或者如果您已经创建了该图并且有一个句柄:

fig.set_figwidth(8)
fig.set_figheight(6)

因此,如果你使figsize更大,那么实际上你将所有的数字元素都缩小(假设你的最终数字在海报上有固定的大小)。要增加所有字体/标记/行大小,只需缩小figsize

请注意,pdf或svg的可扩展性取决于您使用的程序的兼容性,以使海报能够很好地与矢量图形一起使用(这是您无论如何都需要的),所以一定不要将图像导入为jpg或png等。