Saya memiliki satu angka yang mengandung banyak subplot.
fig = plt.figure(num=None, figsize=(26, 12), dpi=80, facecolor='w', edgecolor='k')
fig.canvas.set_window_title('Window Title')
# Returns the Axes instance
ax = fig.add_subplot(311)
ax2 = fig.add_subplot(312)
ax3 = fig.add_subplot(313)
Bagaimana cara menambahkan judul ke subplot?
ara.suptitle
menambahkan judul untuk semua grafik dan meskipun ax.set_title()
ada, yang terakhir tidak menambahkan judul untuk saya subplot.
Terima kasih untuk bantuan anda.
Edit:
Mengoreksi typo tentang set_title()
. Terima Kasih Rutger Kassies
kapak.set_title()
harus mengatur judul untuk memisahkan subplot:
import matplotlib.pyplot as plt
if __name__ == "__main__":
data = [1, 2, 3, 4, 5]
fig = plt.figure()
fig.suptitle("Title for whole figure", fontsize=16)
ax = plt.subplot("211")
ax.set_title("Title for first plot")
ax.plot(data)
ax = plt.subplot("212")
ax.set_title("Title for second plot")
ax.plot(data)
plt.show()
Anda dapat memeriksa apakah kode ini bekerja untuk anda? Mungkin sesuatu yang akan menimpa mereka nanti?
kapak.judul.set_text('Saya Plot Judul')
tampaknya untuk bekerja juga.
fig = plt.figure()
ax1 = fig.add_subplot(221)
ax2 = fig.add_subplot(222)
ax3 = fig.add_subplot(223)
ax4 = fig.add_subplot(224)
ax1.title.set_text('First Plot')
ax2.title.set_text('Second Plot')
ax3.title.set_text('Third Plot')
ax4.title.set_text('Fourth Plot')
plt.show()
Singkatan menjawab asumsi
impor matplotlib.pyplot sebagai plt
:
plt.gca().set_title('title')
seperti dalam:
plt.subplot(221)
plt.gca().set_title('title')
plt.subplot(222)
etc...
Maka tidak perlu berlebihan variabel.
Jika anda ingin membuatnya lebih pendek, anda bisa menulis :
import matplolib.pyplot as plt
for i in range(4):
plt.subplot(2,2,i+1).set_title('Subplot n°{}' .format(i+1))
plt.show()
Itu membuat mungkin kurang jelas tapi anda don't membutuhkan lebih banyak garis-garis atau variabel
Dalam kasus anda memiliki beberapa gambar dan anda ingin loop meskipun mereka dan menunjukkan kepada mereka 1 dengan 1 beserta judul - ini adalah apa yang dapat anda lakukan. Tidak perlu secara eksplisit mendefinisikan ax1, ax2, dll.
`` impor matplotlib.pyplot sebagai plt ara, ax = plt.subplot(2, 2, figsize=(6, 8)) for i in range(len(ax)): untuk j dalam range(len(ax[i])):
ax[i,j].set_title('Judul' + str(i) + str(j)) ``