首頁人工智能技術資訊正文

怎樣使用striplot()函數繪制類別散點圖?

更新時間:2023-08-29 來源:黑馬程序員 瀏覽量:

IT培訓班

數據集中的數據類型有很多種,除了連續(xù)的特征變量之外,最常見的就是類別型的數據了,比如人的性別、學歷、愛好等,這些數據類型都不能用連續(xù)的變量來表示,而是用分類的數據來表示。 Seaborn針對分類數據提供了專門的可視化函數,這些函數大致可以分為如下三種:

分類數據散點圖: swarmplot()與 stripplot()。

類數據的分布圖: boxplot() 與 violinplot()。

分類數據的統(tǒng)計估算圖:barplot() 與 pointplot()。

下面使用stripplot()來畫類別散點圖,stripplot()函數的語法格式如下。

seaborn.stripplot(x=None, y=None, hue=None, data=None, order=None, hue_order=None, jitter=False)

上述函數中常用參數的含義如下

(1) x,y,hue:用于繪制長格式數據的輸入。

(2) data:用于繪制的數據集。如果x和y不存在,則它將作為寬格式,否則將作為長格式。

(3) jitter:表示抖動的程度(僅沿類別軸)。當很多數據點重疊時,可以指定抖動的數量或者設為Tue使用默認值。

為了讓大家更好地理解,接下來,通過 stripplot()函數繪制一個散點圖,示例代碼如下。

# 獲取tips數據
tips = sns.load_dataset("tips")
sns.stripplot(x="day", y="total_bill", data=tips)

運行結果如下圖所示。
1693287362134_圖1.png

從上圖中可以看出,圖表中的橫坐標是分類的數據,而且一些數據點會互相重疊,不易于觀察。為了解決這個問題,可以在調用striplot()函數時傳入jitter參數,以調整橫坐標的位置,改后的示例代碼如下。

sns.stripplot(x="day", y="total_bill", data=tips, jitter=True)

運行結果如下圖所示。
1693291820264_運行結果.png

除此之外,還可調用 swarmplot0函數繪制散點圖,該函數的好處是所有的數據點都不會重疊,可以很清晰地觀察到數據的分布情況,示例代碼如下。

sns.swarmplot(x="day", y="total_bill", data=tips)

運行結果如圖所示。

1693292114132_圖.png

分享到:
在線咨詢 我要報名
和我們在線交談!