首頁 > 後端開發 > Python教學 > 在 Matplotlib 中使用 `twinx()` 時,如何在單一圖例中顯示兩個軸的標籤?

在 Matplotlib 中使用 `twinx()` 時,如何在單一圖例中顯示兩個軸的標籤?

Linda Hamilton
發布: 2024-11-01 06:16:01
原創
543 人瀏覽過

How do I display labels from both axes in a single legend when using `twinx()` in Matplotlib?

向Twinx() 圖加入輔助軸圖例

在使用twinx() 建立的具有兩個y 軸的圖中,加入為線條添加標籤並在圖例中顯示它們可能具有挑戰性。最初,只有主軸上的標籤可能會出現在圖例中。

要解決此問題,請使用以下行為輔助軸添加圖例:

ax2.legend(loc=0)
登入後複製

這將導致兩個單獨的圖例,每個軸一個。

但是,如果您希望單一圖例上的所有標籤,請按照以下步驟操作:

  1. 定義兩個軸並繪製線條:

    ax = fig.add_subplot(111)
    ax2 = ax.twinx()
    
    lns1 = ax.plot(...)
    lns2 = ax.plot(...)
    lns3 = ax2.plot(...)
    登入後複製
  2. 定義圖例句柄與標籤:

    lns = lns1 + lns2 + lns3
    labs = [l.get_label() for l in lns]
    登入後複製
  3. 使用下列指令新增圖例:

    ax.legend(lns, labs, loc=0)
    登入後複製
  4. 使用下列指令新增圖例:

此方法將在單一圖例中顯示所有軸標籤。

以上是在 Matplotlib 中使用 `twinx()` 時,如何在單一圖例中顯示兩個軸的標籤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板