seaborn常用图
首先導(dǎo)包,下面會使用sklearn自帶的數(shù)據(jù)集來演示畫圖操作
from sklearn.model_selection import train_test_split import matplotlib.pyplot as plt import pandas as pdX,Y分別表示鳶尾花的特征和標(biāo)簽,下面的畫圖會使用到X,Y。 下面的畫圖有的是Dataframe列名,有的是numpy數(shù)據(jù)
1、lineplot(線圖)
注意:這里我直接用numpy類型,并未轉(zhuǎn)成DataFrame類型
加載sklearn的鳶尾花數(shù)據(jù),共150條數(shù)據(jù),每個數(shù)據(jù)有、'sepal length ', 'sepal width ', 'petal length ', 'petal width' 4個特征,共'setosa', 'versicolor', 'virginica'三種類別。
?
?上面的ci=0用于去掉圖中的陰影,可以去掉ci=0看看效果。
上面我并未通過DataFrame關(guān)鍵字來獲取指定列,所以坐標(biāo)軸沒有標(biāo)簽,我手動plt.xlabel和plt.ylabel進行了指定坐標(biāo)軸標(biāo)簽。
2、scatterplot(散點圖)
?注意:這里可以使用向量而不使用DataFrame中的列名
散點圖是分析兩個特征變量直接的關(guān)系,如果是線性關(guān)系,我們就可以去除其中一個特征,相當(dāng)于去除冗余特征
1、普通散點圖
?解釋跟上面的線圖一樣
2、分組散點圖
按點所屬的類型來進行不同標(biāo)記,使用hue參數(shù)來指分組。下面的hue是指樣本的標(biāo)簽target,sns會自動根據(jù)標(biāo)簽的不同來分組,即'setosa', 'versicolor', 'virginica'三組,因此有三種不同顏色的點。
?下面增加了style=Y參數(shù),這個也是分組的功能,根據(jù)style所選參數(shù)來分組點,不同類別的點采用不同的形狀,Y有三種類別,所以有三種形狀的點
3、pairplot(成對關(guān)系圖)
注意:這里強制使用DataFrame類型,所以現(xiàn)將X轉(zhuǎn)成了DataFrame類型
將每一列與其他類畫散點圖,上面的數(shù)據(jù)集有4個特征,所以有4*4個圖
注意, 這個參數(shù)必須是DataFrame類型
4、countplot(計數(shù)圖)
注意:這里可以使用向量作為輸入,不需要列名
1、指定參數(shù)為x=,即以x軸作為類別,y軸作為計數(shù)個數(shù)
?2、指定參數(shù)y=,即以y軸作為類別,x軸作為計數(shù)個數(shù)
?5、displot(直方圖)
?注意:不是distplot,是displot,distplot已經(jīng)被官方遺棄,請使用displot
直方圖是數(shù)值數(shù)據(jù)分布的精確圖形表示。 這是一個連續(xù)變量的概率分布的估計,直方圖的畫法如下:
?1、普通直方圖
直方圖默認(rèn)組數(shù)是9組,可以通過bins參數(shù)來調(diào)整組數(shù),橫軸是變量的數(shù)值范圍,縱軸是落在區(qū)間的個數(shù)
下面的,kde=True參數(shù)是畫帶核密度的直方圖
?
2、分類直方圖:根據(jù)數(shù)據(jù)所屬類別的來畫直方圖
?解釋:上面的三種不同顏色代表三種鳶尾花,通過hue=Y來給數(shù)據(jù)劃分。沒給數(shù)據(jù)X[i, 0]都對應(yīng)一個Y標(biāo)簽,所以得出三種顏色的柱子。通過x=X[:,0]來指定柱子的方向在x,如果指定y=X[:,0]那么將在y軸顯示柱子。
6、lmplot回歸圖
回歸圖會自動完成回歸擬合,用于分析特征變量之間是否存在關(guān)系。
注意:下圖是官網(wǎng)的參數(shù)介紹,這個函數(shù)必須提供,特征X, 特征Y, data, 而且只能是DataFrame類型的列名,通過hue來進行分組。
?
?下圖是通過hue=Y參數(shù)來進行分組,Y有三種類型,所以有三種不同顏色的點
總結(jié)
以上是生活随笔為你收集整理的seaborn常用图的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: KNN识别手写数字MNIST
- 下一篇: KDD_CUP99数据集处理和测试(已处