Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mencipta Bar Warna Bersatu untuk Berbilang Subplot Matplotlib?

Bagaimana untuk Mencipta Bar Warna Bersatu untuk Berbilang Subplot Matplotlib?

Susan Sarandon
Susan Sarandonasal
2024-12-20 07:49:09390semak imbas

How to Create a Unified Colorbar for Multiple Matplotlib Subplots?

Mencapai Bar Warna Bersatu untuk Berbilang Subplot

Mencipta subplot dengan paksi-y dikongsi ialah tugas biasa dalam Matplotlib. Walau bagaimanapun, menambahkan bar warna tunggal pada berbilang subplot boleh menyebabkan ketidakkonsistenan dan salah penjajaran.

Untuk mencipta bar warna yang merangkumi semua subplot, kami memperkenalkan subplot tambahan khusus untuk memaparkan bar warna. Subplot ini mempunyai paksinya dimatikan untuk menghalangnya daripada memaparkan sebarang data sebenar.

Berikut ialah coretan kod yang diubah suai berdasarkan soalan asal:

import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure()
fig.subplots_adjust(wspace=0, hspace=0)

# Subplot 1
ax1 = fig.add_subplot(1, 3, 1)
plt.imshow(data1, extent=(-2, 2, -2, 2))  # Placeholder data

# Subplot 2
ax2 = fig.add_subplot(1, 3, 2, sharey=ax1)
plt.imshow(data2, extent=(-2, 2, -2, 2))  # Placeholder data

# Colorbar subplot
ax3 = fig.add_subplot(1, 3, 3)
ax3.axis('off')
cbar = plt.colorbar(ax=ax2)

plt.show()

Dengan meletakkan bar warna dalam subplotnya sendiri , kami memastikan ia kekal bebas daripada plot data dan mengekalkan saiz yang konsisten. Panggilan ke subplots_adjust membantu memberi ruang kepada bar warna, menghalangnya daripada bertindih dengan subplot.

Teknik ini membolehkan paparan data yang bersih dan standard merentas berbilang subplot, memberikan gambaran visual yang lebih baik bagi data dan menjadikannya lebih mudah untuk membandingkan nilai.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Bar Warna Bersatu untuk Berbilang Subplot Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn