首頁 >後端開發 >Python教學 >如何使用 Matplotlib 的「text」和「annotate」函數為長條圖新增值標籤?

如何使用 Matplotlib 的「text」和「annotate」函數為長條圖新增值標籤?

DDD
DDD原創
2024-12-20 05:37:11728瀏覽

How to Add Value Labels to Bar Charts Using Matplotlib's `text` and `annotate` Functions?

將值標籤新增至長條圖

建立條形圖時,在每個長條上顯示資料值可以增強圖表的可讀性和可解釋性。這可以使用 Matplotlib 的文字或註解函數來實作。

使用文字

文字函數將文字直接加入繪圖中,通常用於新增簡單的標籤或註解。要使用文字為長條圖新增值標籤,您需要:

for rect in ax.patches:
    height = rect.get_height()
    ax.text(
        rect.get_x() + rect.get_width() / 2, 
        height + 5, 
        str(height), 
        ha="center", 
        va="bottom"
    )

這會迭代長條圖,取得每個長條圖的高度,並將標籤放置在長條圖的正上方。

使用註解

註解功能可以更好地控制標籤的位置和外觀。它可用於:

  • 指定繪圖中標籤的位置(在資料座標中)。
  • 設定文字字串、顏色、字型和對齊方式。
  • 繪製將標籤連接到欄的箭頭或線條。

這裡是一個使用的範例annotate:

for x, y in zip(x_labels, freq_series):
    ax.annotate(
        str(y), 
        xy=(x, y), 
        xytext=(x, y + 5), 
        ha="center", 
        va="bottom", 
        arrowprops=dict(arrowstyle="->")
    )

這會將標籤放置在欄的頂部中心,並使用箭頭指示對應的值。

選擇正確的函數

文字和annotate 可用來為長條圖新增值標籤。 text 更易於使用,而 annotate 可以更好地控制標籤的外觀和位置。它們之間的選擇取決於您情節的特定要求。

以上是如何使用 Matplotlib 的「text」和「annotate」函數為長條圖新增值標籤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn