Intro
import seaborn as sns
sns.__version__
'0.9.0'
seaborn版本0.9.0
数据引入
import pandas as pd
from sklearn.datasets import load_iris
data = load_iris()
# print(dir(data)) # 查看data所具有的属性或方法
# print(data.DESCR) # 查看数据集的简介
# 直接读到pandas的数据框中
irisDf = pd.DataFrame(data=data.data, columns=data.feature_names)
# 增加属性数据
irisDf["target"] = data.target
# 重编码
irisDf["species"] = irisDf.target.map({0:"Setosa",1:"Versicolour",2:"Virginica"})
# 列名变换
irisDf.columns = ["sepalLength","sepalWidth","petalLength","petalWidth","target","species"]
irisDf.head()
sepalLength | sepalWidth | petalLength | petalWidth | target | species | |
---|---|---|---|---|---|---|
0 | 5.1 | 3.5 | 1.4 | 0.2 | 0 | Setosa |
1 | 4.9 | 3.0 | 1.4 | 0.2 | 0 | Setosa |
2 | 4.7 | 3.2 | 1.3 | 0.2 | 0 | Setosa |
3 | 4.6 | 3.1 | 1.5 | 0.2 | 0 | Setosa |
4 | 5.0 | 3.6 | 1.4 | 0.2 | 0 | Setosa |
单变量
import seaborn as sns
# sns.set(color_codes=True)
# sns.set_style("white")
sns.violinplot( y=irisDf["sepalLength"] )
单变量分组
sns.violinplot(x=irisDf["species"], y=irisDf["sepalLength"] )
多变量分组
sns.violinplot(data=irisDf.iloc[:,0:4])