Skip to content

imshow()簡介

matplotlib.pyplot.imshow()Matplotlib 用於顯示 2D 陣列數據或影像 的函數,適合:

  • 影像顯示(如 .png, .jpg 圖片)
  • 熱圖(Heatmap)(視覺化數據)
  • 矩陣資料可視化(如機器學習的權重、相關性矩陣)

✅ 1. 顯示影像

你可以用 imshow() 直接顯示影像:

import matplotlib.pyplot as plt
import matplotlib.image as mpimg

# 讀取影像
img = mpimg.imread("example.jpg")

# 顯示影像
plt.imshow(img)
plt.axis("off")  # 隱藏軸
plt.title("顯示圖片")
plt.show()

適用於顯示 .jpg, .png, .tiff 等影像


✅ 2. 顯示 2D 陣列數據(熱圖)

imshow() 也可用來顯示數值矩陣,適合用來畫熱圖(Heatmap)

import numpy as np

data = np.random.rand(10, 10)  # 產生 10x10 隨機數據
plt.imshow(data, cmap="viridis", interpolation="nearest")
plt.colorbar()  # 加入顏色條
plt.title("熱圖示例")
plt.show()

適用於科學數據視覺化、機器學習熱圖、相關性矩陣等


✅ 3. cmap 參數(顏色映射)

你可以使用 cmap 來改變顏色:

plt.imshow(data, cmap="coolwarm")  # 改成 coolwarm 色調

常用 cmap 色盤:

  • 灰階gray
  • 彩色viridis(預設)、jet, coolwarm, plasma
  • 反轉顏色gray_r, viridis_r

✅ 4. vmin & vmax(調整顏色範圍)

plt.imshow(data, cmap="hot", vmin=0, vmax=1)

適用於控制數值對應的顏色範圍,避免影響比較


📌 總結

功能 用法
顯示影像 plt.imshow(img)
顯示熱圖 plt.imshow(data, cmap="viridis")
調整色彩映射 cmap="coolwarm"
調整顏色範圍 vmin=0, vmax=1
添加顏色條 plt.colorbar()

🚀 imshow() 是 Matplotlib 最強大的 2D 數據可視化工具,適用於影像與科學計算! 😊