引言
在數據分析和可視化過程中,箱線圖是一種非常重要的圖形,它可以幫助我們更好的了解數據分佈情況、異常值的存在以及數據的極值、中位數等統計信息。
Python作為一種流行的編程語言,有多種繪製箱線圖的工具包。在這篇文章中,我們將介紹一些基於Python的箱線圖繪製方法,並且演示如何使用各自的工具包通過代碼來實現箱線圖的繪製,希望對讀者在數據可視化方面有所幫助。
正文
Matplotlib繪製箱線圖
Matplotlib是Python中最受歡迎的數據可視化庫之一,也是最基本的繪圖工具之一。它可以繪製多種類型的圖形,包括條形圖、曲線圖、散點圖等等。Matplotlib是Python中最有用和最靈活的數據可視化工具之一,它可以輕鬆創建高質量的圖形,同時也非常適合初學者。
下面是Matplotlib生成一個簡單的箱線圖的代碼:
import matplotlib.pyplot as plt import numpy as np np.random.seed(10) data = np.random.normal(100, 20, 200) fig, ax = plt.subplots() ax.boxplot(data, vert=False) plt.show()
代碼中我們首先通過numpy生成了一個包含200個隨機數的一維數組,然後將這個數組作為參數傳遞給plt.boxplot()函數,生成一個箱線圖。
如下所示,生成的箱線圖顯示了所有數據點的分佈情況,以及四分位數、中位數和異常值。
Seaborn繪製箱線圖
Seaborn是在Matplotlib基礎上建立的一個數據可視化庫,它旨在簡化多個圖形之間的比較和創建。Seaborn具有比Matplotlib更好的默認參數設置來製作漂亮的圖形。它可以通過一些簡單的命令,使數據集中的模式變得更加明顯,這將幫助我們更好地理解數據集和模式。
下面是使用Seaborn繪製一個箱線圖的示例代碼:
import seaborn as sns import numpy as np np.random.seed(10) data = np.random.normal(100, 20, 200) ax = sns.boxplot(data=data) plt.show()
代碼中我們同樣使用Numpy生成一個包含200個隨機數的一維數組,然後作為參數傳遞給sns.boxplot()函數,生成一個箱線圖。
如下所示,生成的箱線圖顯示了所有數據點的分佈情況,以及四分位數、中位數和異常值。
Plotly繪製箱線圖
Plotly是一種高度交互性的數據可視化庫,它可以生成多種類型的圖形,包括散點圖、直方圖、餅圖、線圖等等。Plotly還支持Python、R、JavaScript等多種編程語言。
下面是使用Plotly繪製箱線圖的示例代碼:
import plotly.express as px import numpy as np np.random.seed(10) data = np.random.normal(100, 20, 200) fig = px.box(data, y=data) fig.show()
與前面兩個例子不同的是,在這個示例中我們需要使用plotly.express庫中的px.box()函數來生成一個箱線圖。我們同樣使用Numpy生成一個包含200個隨機數的一維數組,然後作為參數傳遞給函數px.box()。
如下所示,生成的箱線圖顯示了所有數據點的分佈情況,以及四分位數、中位數和異常值。
多圖繪製
有些情況下,我們需要在同一個頁面上同時展示多個箱線圖。下面是一個將Matplotlib、Seaborn和Plotly生成的三個箱線圖放在同一個頁面上的示例代碼:
import matplotlib.pyplot as plt import seaborn as sns import plotly.express as px import numpy as np np.random.seed(10) data = np.random.normal(100, 20, 200) fig, ax = plt.subplots() ax.boxplot(data, vert=False) ax = sns.boxplot(data=data) fig = px.box(data, y=data) fig.show()
如下所示,代碼中我們先生成一個包含200個隨機數的Numpy一維數組,然後使用Matplotlib、Seaborn和Plotly分別繪製了三個箱線圖,並將它們放在同一個頁面上。
結語
在本文中,我們介紹了基於Matplotlib、Seaborn和Plotly三種Python庫的箱線圖繪製方法。可以根據需要選擇適合自己的工具包,開始繪製相應的箱線圖。這些庫均提供了豐富的繪圖功能,並且對數據的可視化非常友好。
原創文章,作者:UUDNT,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/324518.html