web-dev-qa-db-ja.com

plt.subplotsを使用する場合のFigureのサイズ

plt.subplotsを使用しているときに、フィギュアのサイズを変更しようとすると問題が発生します。次のコードでは、すべてのサブプロットが束ねられた標準サイズのグラフ(〜100あり)と、明らかに余分な空のfiguresizeが得られます。 tight_layoutを使用してみましたが、役に立ちませんでした。

def plot(reader):
    channels=[]
    for i in reader:
        channels.append(i)

    plt.figure(figsize=(50,100))
    fig, ax = plt.subplots(len(channels), sharex=True)

    plot=0    
    for j in reader: 

        ax[plot].plot(reader["%s" % j])
        plot=plot+1

    plt.tight_layout()
    plt.show()

どんな助けも素晴らしいでしょう!

enter image description here

18

最初のplt.figure()を削除できます。 plt.subplots()を呼び出すと、新しいFigureが作成されるため、最初の呼び出しは何もしません。

バックグラウンドでのsubplotsコマンドはplt.figure()を呼び出して、すべてのキーワードが渡されます。したがって、figsizeキーワードをsubplots()コマンドに追加するだけです。

def plot(reader):
    channels=[]
    for i in reader:
        channels.append(i)

    fig, ax = plt.subplots(len(channels), sharex=True, figsize=(50,100))

    plot=0    
    for j in reader: 

        ax[plot].plot(reader["%s" % j])
        plot=plot+1

    plt.tight_layout()
    plt.show()
25
Rutger Kassies