首頁 > 後端開發 > Python教學 > 如何使用「文字」和「註解」為 Matplotlib 長條圖新增值標籤?

如何使用「文字」和「註解」為 Matplotlib 長條圖新增值標籤?

Linda Hamilton
發布: 2024-12-30 12:28:17
原創
500 人瀏覽過

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

用數值標記長條圖

簡介

條形圖是可視化資料分佈的有用方法。有時,在條形上添加值標籤以提供額外的上下文是很有價值的。在本文中,我們將探索使用 matplotlib 向長條圖添加值標籤的兩種方法:「文字」和「註釋」。

使用「文字」作為值標籤

「text」方法可讓您將文字新增至繪圖中指定的座標處。要將其用於值標籤,請按照以下步驟操作:

  1. 繪製條形圖。
  2. 從 ax.patches 成員取得條形補丁清單。
  3. 迭代補丁,取得每個條的位置和高度。
  4. 使用 ax.text 在所需位置新增值標籤文字(例如,條形中心)。

對值標籤使用「annotate」

「annotate」方法與「text」類似,但提供了更多功能放置和格式的靈活性。要將其用於值標籤,請按照以下步驟操作:

  1. 從 ax.patches 成員取得條形圖塊清單。
  2. 迭代圖塊,取得每個條形的位置和高度。
  3. 定義註解文字及其相對於欄位的位置。
  4. 使用 ax.annotate 來將註解加入繪圖中。

程式碼範例

這是使用“文字”方法的範例:

import matplotlib.pyplot as plt

# Data
x_labels = [1, 2, 3, 4, 5]
values = [10, 20, 30, 40, 50]

# Plot
plt.figure(figsize=(12, 8))
ax = plt.bar(x_labels, values)

# Add value labels
rects = ax.patches
for rect, value in zip(rects, values):
    x = rect.get_x() + rect.get_width() / 2
    y = rect.get_height() + 5
    ax.text(x, y, f"{value}", ha="center", va="bottom")

plt.show()
登入後複製

且這是使用“註解”的範例方法:

import matplotlib.pyplot as plt

# Data
x_labels = [1, 2, 3, 4, 5]
values = [10, 20, 30, 40, 50]

# Plot
plt.bar(x_labels, values)

# Add value labels
for x, y in zip(x_labels, values):
    ax.annotate(f"{y}", xy=(x, y), xytext=(0, 10), textcoords="offset points", ha="center", va="bottom")

plt.show()
登入後複製

這兩種方法都提供了向條形圖添加值標籤的簡單方法,增強其視覺清晰度並向受眾傳達重要訊息。

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

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