Pygal 中的直方圖


Pygal 是一個用於建立互動式圖表和圖形的 Python 庫,它支援的圖表之一是直方圖。直方圖基本上是數值資料分佈的圖形表示,它可以幫助我們快速識別提供的資料集中模式、異常值和趨勢。在本文中,我們將討論直方圖的基礎知識以及如何在 Pygal 中建立直方圖,包括圖表自定義和向其中新增資料。

什麼是直方圖?

直方圖是資料集分佈的圖形表示。它主要顯示資料點在某些區間(也稱為箱)中的出現頻率。直方圖的橫軸(x 軸)表示資料集中值的範圍,而縱軸(y 軸)表示該特定範圍內值的出現頻率。

直方圖特別用於視覺化連續資料,例如籃子中蔬菜的重量或人群中個體的尺寸。直方圖使我們能夠觀察分佈的形狀,包括偏度以及峰值或谷值的存在。

如何在 pygal 中建立直方圖?

以下是我們在 Pygal 中建立直方圖時將遵循的步驟。在 Pygal 中建立直方圖的第一步是安裝 Pygal 庫。我們可以使用 pip(Python 的包安裝程式)來完成此操作 -

pip install pygal

安裝 pygal 庫後,我們需要按照以下步驟在 pygal 中建立直方圖 -

  • 在程式中匯入“pygal”模組和直方圖圖表型別 -

import pygal
from pygal import Histogram
  • 建立一個“直方圖”物件並設定其 x 軸標籤和標題 -

histogram_obj = Histogram(title='Distribution of Scores', x_title='Score Range')
  • 使用 add() 函式將資料新增到直方圖圖表中。我們還可以將資料作為值列表或作為字典傳遞,其中箱標籤作為鍵,箱頻率作為值。以下是執行此操作的程式碼 -

# Add data to the histogram
histogram.add('Scores', [(6, 45, 55), (7, 55, 65),(8, 65, 75), (8, 75, 85), (7, 85, 95), (6, 95, 105)])
  • 使用 render_to_file() 方法呈現圖表,這將圖表儲存為 SVG 檔案 -

# Render the chart to an SVG file
histogram.render_to_file('histogram.svg')

以下是使用 Pygal 建立直方圖的完整程式碼 -

示例

import pygal
from pygal import Histogram

# Create a Histogram object
histogram_obj = Histogram(title='Distribution of Scores', x_title='Score Range')

# Add data to the histogram
histogram_obj.add('Scores', [(6, 45, 55), (7, 55, 65),(8, 65, 75), (8, 75, 85), (7, 85, 95), (6, 95, 105)])

# Render the chart to an SVG file
histogram_obj.render_to_file('histogram_sample.svg')

輸出

自定義直方圖

Pygame 還允許使用者根據顏色、大小、標籤等方面自定義直方圖的外觀。以下是我們可以對直方圖進行的一些自定義示例 -

  • 我們可以使用 width 和 height 屬性設定圖形的大小。

  • 我們可以使用 fill 屬性更改條形圖的顏色。

  • 我們還可以使用 legend_at_bottom 屬性顯示圖例。

  • 使用 bins 屬性,我們可以設定直方圖中箱的數量。

讓我們來看一個示例,我們將更改條形圖的顏色,並將圖例顯示在底部,為此,我們可以修改直方圖物件,如下面的程式碼所示 -

示例

import pygal
from pygal import Histogram
histogram_ex = pygal.Histogram(title='Distribution of Test Scores', x_title='Test Scores', y_title='Frequency',xrange=(0, 100), yrange=(0, 10))
histogram_ex.add('Dataset', [(11, 22), (12, 33), (13, 44), (14, 55)], bins=5)
histogram_ex.add('Dataset 1', [(23,30), (11,45), (33, 79)],style={'color': 'blue'})
histogram_ex.add('Dataset 2', [(12, 23), (14, 21), (16,19)],style={'color': '#006699'})
histogram_ex.render_to_file('histogram_sample.svg')

輸出

結論

總之,在 Pygal 中建立直方圖是一個非常簡單的過程,它允許我們根據使用者的選擇建立獨特且不同的視覺化效果。我們還討論了 Pygal 的內建方法和屬性,使用這些方法和屬性,我們可以自定義直方圖的各個方面,例如顏色、標題、標籤和軸範圍。藉助本文中提供的步驟,您將能夠輕鬆地為資料集建立直方圖。

更新於:2023年5月31日

200 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告