帶有多個圖例項的 Matplotlib 直方圖


要繪製帶有多個圖例項的直方圖,我們可以執行以下步驟:

  • 設定圖表的大小並調整子圖之間的和四周的填充。
  • 使用 numpy 建立隨機資料
  • 使用 hist() 方法繪製直方圖。
  • 列出顏色列表來給每塊補丁填充顏色。
  • 迭代補丁並設定每塊補丁的填充顏色。
  • 建立控制代碼列表以放置圖例。
  • 針對多個圖例項使用 legend() 方法。
  • 要顯示圖表,請使用 show() 方法。

示例

import matplotlib.pyplot as plt
import numpy as np
from matplotlib.patches import Rectangle

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

data = np.random.rayleigh(size=1000) * 35
N, bins, patches = plt.hist(data, 30, ec="k")
colors = ["red", "yellow", "green"]

for i in range(0, len(bins)-1):
patches[i].set_facecolor(colors[i % len(colors)])

handles = [Rectangle((0, 0), 1, 1, color=c, ec="k") for c in colors]
labels = ["Red", "Yellow", "Green"]
plt.legend(handles, labels)

plt.show()

輸出

更新於: 2021 年 6 月 3 日

3K+ 瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告