Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีแสดง Colorbar หลายตัวใน Matplotlib


ภาพรวม

สาธิตวิธีสร้างกราฟหลายแผ่นพร้อม Colorbar แยกต่างหากใน Matplotlib โดยใช้ Subplots

ขั้นตอน

  1. ตั้งค่าขนาด Figure และ Padding
  2. สร้าง Figure และ Subplots (ตัวอย่าง 2 แถว 1 คอลัมน์)
  3. สร้างข้อมูลสุ่มสำหรับแต่ละ Subplot
  4. แสดงข้อมูลด้วย imshow()
  5. เพิ่ม Colorbar ให้แต่ละแผ่นด้วย plt.colorbar()
  6. แสดงผลด้วย plt.show()

ตัวอย่างโค้ด

from matplotlib import pyplot as plt
import numpy as np

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

fig, (ax1, ax2) = plt.subplots(nrows=2, ncols=1)
N = 10

data1 = np.random.rand(N, N)
im1 = ax1.imshow(data1, cmap='hot')
plt.colorbar(im1, ax=ax1)

data2 = np.random.rand(N, N)
im2 = ax2.imshow(data2, cmap='plasma')
plt.colorbar(im2, ax=ax2)

plt.show()

หมายเหตุ

  • ใช้พารามิเตอร์ ax=ax1 แทน cax=ax1 (โค้ดต้นฉบับมีข้อผิดพลาด)
  • แต่ละ Colorbar จะสัมพันธ์กับข้อมูลและ Colormap ของ Subplot นั้นๆ