將資料繪製為散佈圖是一種廣泛使用的視覺化技術。然而,對於大型資料集,熱圖提供了更簡潔直觀的表示。本文探討了使用多功能 Matplotlib 函式庫將分散式資料轉換為熱圖的方法。
提供的範例資料由 10,000 個 X、Y 資料點組成。 Matplotlib 的內建熱圖功能需要預處理單元格值,這使得從原始分散資料產生熱圖變得困難。
為了克服這個限制,我們可以利用 NumPy 的histogram2d 函數。此方法透過建立二維直方圖來估計資料點的機率密度。
import numpy as np import matplotlib.pyplot as plt # Generate test data x = np.random.randn(8873) y = np.random.randn(8873) # Create a 50x50 heatmap heatmap, xedges, yedges = np.histogram2d(x, y, bins=50) extent = [xedges[0], xedges[-1], yedges[0], yedges[-1]] plt.imshow(heatmap.T, extent=extent, origin='lower') plt.show()
histogram2d 函數將資料量化為離散箱,建立一個熱圖,其中顏色強度代表每個箱中資料點的頻率
您可以透過調整bin 數量來修改熱圖解析度:
# Create a 512x384 heatmap heatmap, xedges, yedges = np.histogram2d(x, y, bins=(512, 384))
此外,Matplotlib 允許對熱圖樣式進行廣泛的自訂,包括配色方案、插值方法和註釋。探索 Matplotlib 的文檔以取得更多自訂選項。
以上是如何使用 Matplotlib 將分散資料轉換為熱圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!