在matplotlib中以编程方式增大图形

2024-10-06 13:22:00 发布

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

{1美元^

如何在matplotlib中增加图形的大小,以容纳可变数量的子图,同时保持高度不变?在

我正在绘制大量的图形,每个图形都由一个主子图(绿色)组成,它应该覆盖图像高度的90%。除此之外,我还添加了一个可变数量的注释子块(橙色),每个子块应占10%的高度。换言之,一个带有一个注释的图形的基本情况将导致图形的高度为100%,而具有5个注释的图形的总高度为140%

一个命令可以让我绘制主图,然后在添加每个子图时增大图形,这是理想的。在


Tags: 图像命令图形数量高度matplotlib绘制情况
2条回答

我不认为这是一个自动选择。我可能错了。有一个^{}可以调整以英寸为单位的大小。问题是轴是相对于图形尺寸定义的,因此在调整大小之前,图形上的任何子图都会被缩放以填充额外的40%空间。在

你必须编写一个程序来调整图形的高度和比例,并替换图形中的任何内容。这不是不可能,但我再次认为这个功能还不存在。在

br@ymir:~/temp$ python
Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import matplotlib.pyplot as plt
>>> fig=plt.figure()
>>> fig.get_size_inches()
array([ 8.,  6.])
>>> fig.set_size_inches([8.,12.])
>>> ax=fig.add_subplot(111)
>>> ax.plot([1,1,2],[3,4,5],'ro-')
[<matplotlib.lines.Line2D object at 0x2428590>]
>>> ax1 = fig.add_subplot(212)
>>> ax1.plot([2,3,4],[8,9,11],'bs-')
[<matplotlib.lines.Line2D object at 0x2461450>]
>>> fig.subplots_adjust()

生产 enter image description here

你可以很容易地进一步微调它。在

相关问题 更多 >