首頁  >  文章  >  後端開發  >  如何在 Python 中使用不同結構的資料建立堆積長條圖?

如何在 Python 中使用不同結構的資料建立堆積長條圖?

Patricia Arquette
Patricia Arquette原創
2024-10-21 19:38:29861瀏覽

How to Create a Stacked Bar Chart in Python with Differently Structured Data?

用Python 繪製堆積條形圖

問題:

創建堆積條形圖資料結構與範例電子表格不同。

DataFrame 包含網站名稱和「濫用」或「NFF」事件的計數。目標是建立一個長條圖,其中堆疊條形圖按網站名稱表示兩種類型事件的事件數。數據以 CSV 檔案形式給出。

解決方案:

要建立堆積條形圖,您可以在繪圖函數中使用 stacked=True 選項。關鍵是適當地建立數據。解決方案如下:

  1. 以「站點名稱」和「濫用/NFF」將資料分組。
  2. 使用 count 方法對每個組別中的出現次數進行計數。
  3. 使用 unstack 方法建立一個多索引 DataFrame,以網站名稱為索引,事件類型為列。
  4. 使用 fillna 方法將任何缺失值填入 0。
  5. 最後,使用 stacked=True 選項呼叫繪圖方法來建立堆疊條形圖。
<code class="python"># Import necessary libraries
import pandas as pd
import matplotlib.pyplot as plt

# Read CSV file
df = pd.read_csv('data.csv')

# Group data and count occurrences
df2 = df.groupby(['Site Name', 'Abuse/NFF'])['Site Name'].count().unstack('Abuse/NFF').fillna(0)

# Plot stacked bar chart
df2[['abuse','nff']].plot(kind='bar', stacked=True)
plt.show()</code>

這應該會產生具有所需格式的堆疊條形圖。

以上是如何在 Python 中使用不同結構的資料建立堆積長條圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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