Bagaimana cara mengubah ukuran gambar dengan subplot?

287

Saya menemukan contoh ini di situs web Matplotlib. Saya bertanya-tanya apakah mungkin untuk meningkatkan ukuran gambar.

Saya mencoba

f.figsize(15,15)

tetapi tidak melakukan apa-apa.

Brian
sumber

Jawaban:

526

Jika Anda sudah menggunakan objek gambar:

f.set_figheight(15)
f.set_figwidth(15)

Tetapi jika Anda menggunakan perintah .subplots () (seperti pada contoh yang Anda perlihatkan) untuk membuat angka baru Anda juga dapat menggunakan:

f, axs = plt.subplots(2,2,figsize=(15,15))
Kassi Rutger
sumber
12
ada juga fig.set_size_inchesuntuk mengatur tinggi dan lebar bersama
Francesco Montesano
1
Ini tidak berfungsi, Anda dapat mengatur ketinggian ke apa pun yang Anda inginkan, tetapi tidak akan pernah lebih besar dari monitor Anda.
2
Ini tidak harus melakukan apa pun dengan monitor Anda. Bagaimana jika Anda menghasilkan png? Apakah Anda mengatakan itu tidak pernah lebih besar dari resolusi layar? Kombinasi ukuran dalam inci dengan dpi yang menentukan ukuran dalam piksel.
Rutger Kassies
termasuk figsize dalam panggilan ke subplot () tampaknya tidak berfungsi. memanggil f.set_figheight, bagaimanapun, tidak berfungsi.
Vicki B
Apakah mungkin untuk mengubah ukuran subplot itu sendiri tanpa mengubah figsize?
Alexis.Rolland
38

Atau, buat figure()objek menggunakan figsizeargumen dan kemudian gunakan add_subplotuntuk menambahkan subplot Anda. Misalnya

import matplotlib.pyplot as plt
import numpy as np

f = plt.figure(figsize=(10,3))
ax = f.add_subplot(121)
ax2 = f.add_subplot(122)
x = np.linspace(0,4,1000)
ax.plot(x, np.sin(x))
ax2.plot(x, np.cos(x), 'r:')

Contoh sederhana

Manfaat dari metode ini adalah bahwa sintaks lebih dekat dengan panggilan subplot()alih-alih subplots(). Misalnya, subplot tampaknya tidak mendukung penggunaan GridSpecuntuk mengendalikan jarak subplot, tetapi keduanya subplot()dan add_subplot()dilakukan.

aurtdturtle
sumber
10
Adakah kemungkinan untuk menambahkan 'ukuran' ke ax dan ax2 secara terpisah?
M. Gopal
2
Jika saya mengerti benar Anda ingin mengatur ukuran relatif kedua sumbu? Dalam hal ini, saya pikir Anda sedang mencari pertanyaan ini: stackoverflow.com/questions/10388462/...
aquirdturtle