加载必要函数库和数据集:
import numpy as np
import pandas as pd
import seaborn as sns
from scipy import stats,integrate
from sklearn.datasets import load_boston
import matplotlib.pyplot as plt
%matplotlib inline
Data = load_boston()
X=pd.DataFrame(Data["data"])
y=pd.DataFrame(Data["target"])
Data=pd.DataFrame(np.hstack((X,y)))
data=pd.read_csv("Desktop/creditcard.csv")
iris_data = sns.load_dataset('iris')
Data.columns=['a','b','c','d','e','f','g','h','i','j','k','l','m','n']
sns.stripplot(x='species', y='sepal_width', data=iris_data,jitter=False)
sns.stripplot(x='species', y='sepal_width', data=iris_data,jitter=True)
sns.swarmplot(x='species', y='sepal_width', data=iris_data)
可视化结果:
可以看到,stripplot函数与swarmplot函数的区别,jitter控制数据的横轴抖动,是为了便于看到数据分布,否则就像第一张图一样,只能看到重合的点。swarmplot函数会把所有点展开来,构成像树一样的图。
sns.boxplot(x='species', y='sepal_width', data=iris_data)
sns.violinplot(x='species', y='sepal_width', data=iris_data)
sns.barplot( y='sepal_width',x='species',data=iris_data)
可视化结果:
boxplot就是盒图(箱形图),violinplot就是小提琴图,因为图表形状很像小提琴,barplot就是条形图。
对于二分类问题,violinplot函数可以加入参数spilt=True,使图的左右部分给出不同类别的数据的分布状况。
boxplot函数给出了离群点的位置,也可以直观看出数据大体的范围。
[php]sns.factorplot(x='species', y='sepal_width', data=iris_data,kind="violin")
sns.factorplot(x='species', y='sepal_width', data=iris_data,kind="point")[/php]
可视化结果:
factorplot函数可以画很多种不同类型的图,只需指定所需图表的类别,在kind中指定。
FacetGrid:
p=sns.FacetGrid(iris_data,col="species")
p.map(plt.scatter,"sepal_width","sepal_length",alpha=0.5)
p=sns.FacetGrid(iris_data,hue="species")
p.map(plt.scatter,"sepal_width","sepal_length",alpha=0.5)
可视化结果:
FacetGrid函数需要事先指定要展示的数据内容和区域,在map中指定图片类型,特征等参数,alpha为透明度,上面两段代码唯一的区别就是col改成了hue。
DATA=np.random.rand(8,8)
print(DATA)
sns.heatmap(DATA)
DATA=np.random.rand(8,8)
sns.heatmap(DATA,center=0,vmin=-0.3,vmax=0.3)
输出矩阵:
[[ 0.75750516 0.20313223 0.09145105 0.35887358 0.8079581 0.19258187
0.36633925 0.53386327]
[ 0.48205504 0.69881584 0.1604213 0.62773251 0.3993524 0.84289293
0.29897373 0.93503132]
[ 0.75559178 0.85156274 0.68552551 0.56754039 0.51737525 0.54535109
0.54623589 0.54437509]
[ 0.33192422 0.6335807 0.403023 0.69527967 0.858398 0.27717522
0.31641755 0.95058967]
[ 0.08136173 0.45004231 0.65450865 0.28615466 0.07300981 0.94442768
0.22882471 0.20661669]
[ 0.28258605 0.43803549 0.15773595 0.04588618 0.77194494 0.77141915
0.89607696 0.79850821]
[ 0.5473918 0.89978138 0.90504899 0.83745209 0.63808153 0.86990867
0.00449293 0.11147829]
[ 0.77163825 0.93306494 0.7375752 0.42976015 0.27752934 0.42179227
0.81880655 0.4185804 ]]
热力图:
vmin,vmax指定最小最大值,center指定中间值。