簡體   English   中英

如何將子圖與指定大小對齊?

[英]How to align subplot with specified size?

我有很多不同的圖,必須嚴格指定尺寸。 每個文件一個繪圖。 問題是,當尺寸太大時,我在左邊的子圖中有一些空閑空間,我想裁剪這些空間。 我不能使用subplots_adjust因為小尺寸的地塊也將被croped。 當我調用savefig時,我也不能使用tight選項。 那么,如何將我的所有圖與所有文件中的固定縮進對齊到左側?

import sys, os
import matplotlib.pyplot as plt

path = sys.path[0]
sizes = [(12,3,), (4,3,)]
x =  range(20)


for i, size in enumerate(sizes):
    fig = plt.figure(figsize = size, dpi = 80, facecolor='white', edgecolor=None, linewidth=0.0, frameon=True, subplotpars=None)
    ax = fig.add_subplot(111)
    ax.plot(x)
    plt.ylabel ('Some label')

    fig.savefig(os.path.join(path, 'size_'+str(i)+'.png'), dpi=80, facecolor=fig.get_facecolor(), edgecolor=None, papertype=None, format='png' ,transparent=False)

大尺寸圖像小尺寸圖像

我認為你可以使用tiny_layout()

import sys, os
import matplotlib.pyplot as plt

path = sys.path[0]
sizes = [(12,3,), (4,3,)]
x =  range(20)


for i, size in enumerate(sizes):
    fig = plt.figure(figsize = size, dpi = 80, facecolor='white', edgecolor=None,linewidth=0.0, frameon=True, subplotpars=None)
    ax = fig.add_subplot(111)
    ax.plot(x)
    plt.ylabel ('Some label')

    plt.tight_layout()

    fig.savefig(os.path.join(path, 'size_'+str(i)+'.png'), dpi=80,facecolor=fig.get_facecolor(), edgecolor=None, papertype=None, format='png',transparent=False)

你也可以使用類似的東西

fig.subplots_adjust(right=0.9, left=0.1, top=0.9, bottom=0.1, wspace=0.2)

而不是plt.tight_layout() 如果你想。


請告訴我,如果這不是你需要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM