如何在 Matplotlib 中將數字轉換為顏色比例?
要在 matplotlib 中將數字轉換為顏色比例,我們可以採取以下步驟。
步驟
- 使用 numpy 建立 x、y 和 c 資料點。
- 將資料點轉換為 Pandas 資料框。
- 使用 subplots() 方法建立新圖形或啟用現有圖形。
- 獲取熱色圖。
- 要線性標準化資料,我們可以使用 Normalize() 類。
- 使用 x 和 y 資料點和線性標準化色圖繪製散點圖。
- 為 x 資料點設定 xticks。
- 要製作顏色條,請建立一個標量可對映物件。
- 使用 colorbar() 方法制作顏色條。
- 要顯示圖形,請使用 show() 方法。
示例
from matplotlib import pyplot as plt, colors import numpy as np import pandas as pd plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True x = np.arange(12) y = np.random.rand(len(x)) * 20 c = np.random.rand(len(x)) * 3 + 1.5 df = pd.DataFrame({"x": x, "y": y, "c": c}) fig, ax = plt.subplots() cmap = plt.cm.hot norm = colors.Normalize(vmin=2.0, vmax=5.0) ax.scatter(df.x, df.y, color=cmap(norm(df.c.values))) ax.set_xticks(df.x) sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm) fig.colorbar(sm) plt.show()
輸出
廣告