导入seaborn库
因此一般直接导入相关库
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as np
整体布局风格设置
先画一个图
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
x=np.linspace(1,14,100)
for i in range(1,7):
plt.plot(x,np.sin(x+i*5)*(7-i))
plt.show()
set设置默认画图风格
sns.set()
在plt.show()前加上 ,使用默认的设置组合(绘图风格)
set_style()设置五种不同的绘图风格
sns.set_style('ticks')
同样在show前使用
ticks:绘图风格的一种五种绘图风格分别是’whitegrid‘,’darkgrid‘,’dark‘,’white‘
despine移除不必要的坐标轴
x=np.linspace(1,14,100)
for i in range(1,7):
plt.plot(x,np.sin(x+i*5)*(7-i))
sns.set_style('darkgrid')
sns.despine()
plt.show()
一般是左与左上
despine()参数
sns.despine(left=True)
隐藏left轴
sns.despine(offset=10)
图像距离轴线的距离
axes_style设置多个子图不同的风格
with sns.axes_style('dark'):
在其中的的都是参数中的风格
set_context设置粗细
sns.set_context('talk',font_scale=3.5)
‘talk’:参数,设置线条大小 还有 poster notebook paper等
‘font......':参数,设置字体大小
调色板
1
sns.paiplot()绘图方法
是seaborn库的一种绘图方式,形式上相当于mat...中的ax.bar()
sns.boxplot()绘图方法 箱线图
sns.boxplot(date,palette=sns.color_palette('hls',8))
意思同上paiplot
date:二维参数
palette;色彩设置
sns.color_palette()调色板
sns.color_palette('dark')
默认六种颜色 ,如将上文box.plot改为与其一致则6中颜色
dark:参数改变颜色的饱和度与亮度 还有 deep muted pastel bright dark
color_palette()多种颜色区分
sns.color_palette('hls',8)
hls:颜色空间的一种
8:将hls颜色空间平分为8份,每一份取最中间的 相当于取8个不同的颜色
color_palette()设置成对的颜色
sns.color_palette('Paired',8)#P要大写
设置8/2=4对颜色 如 深蓝:浅蓝
set_paletter()设置所有图颜色
设置所有图为同一种颜色
sns.hls_palette()设置色块的亮度饱和度
sns.hls_palette(9,l=7,s=9)
第一个参数:颜色个数
l:亮度
s:饱和度
xkcd调色板颜色设置带粗细
plt.plot([0,1],[0,1],sns.xkcd_rgb['pale red'],lw=9)
’pale red':颜色
lw:粗细
连续色版(渐变)
用sns.color_palette参数
sns.palplot(sns.color_palette('Blues'))
‘Blues’:颜色参数
由浅到深的颜色变化
改变顺序:由深到浅 加上_r 如‘Blues_r’在颜色上加
cubehelix_palette()调色板 亮度饱和度等线性变化
用sns.color_palette参数
sns.palplot(sns.color_palette('cubehelix',8))
设置颜色区间(start)
sns.palplot(sns.cubehelix_palette(8,start=5,rot=-75))
light_palette()与sns.dark_palette()调用定制连续调色板
由浅到深色
sns.palplot(sns.light_palette('green'))
由深色到浅色
sns.dark_palette('green')
单变量分析绘图
直方图
sns.distplot(x,kde=False,bins=20)
x: 数据
kde:是否核密度估计
bins:分成多少份
显示的图标
x:数据里的数字 y:每个数的个数
散点图
观察两个变量关系最好用散点图
sns.jointplot(x='x',y='y',date=df)
两种:
1.date传入数据框时(二维) x,y均传入字符串指代数据框中的变量名
2.date=None时,x,y直接传入数组
蜂巢状图
sns.jointplot(x,y,kind='hex',color='k')
参数kind设置为hex 散点图变成蜂巢状
回归分析绘图
seaborn自带的数据集
iris:花
iris=sns.load_dataset('iris')
tips
tip=sns.load_dataset('tips')
tip.head()# 返回前几行
pairplot展现变量两两之间关系(对角线直方图)
iris=sns.load_dataset('iris')
sns.pairplot(iris)
repolt与lmport绘制回归关系
sns.regplot(x='x',y='x',data=data,x_jitter=0.5)
‘x’ ‘y’:数据库的行名列名 data:数据库
也可不传数据库 直接传x,y
x_jitter:抖动
抖动之前
之后
多变量分析绘图
stripplot点图
sns.stripplot(x='days',y='totall_bill',data=tips,jitter=True)
jitter:进行抖动
抖动后
swarmplot点图圣诞树
sns.swarmplot(x='day',y='totall_billl',data=tips,hue='sex')
箱线图
sns.boxplot(x='total_bill',y='day',data=tips)
加上参数hue=‘time‘ spilt=True
’
分类属性绘图
画多个图重叠
sns.swarmplot(x='day',y='totall_billl',data=tips,innter=None)
sns.violinplot(x='day',y='totall_billl',data=tips,alpha=5)
alpha:透明度
条形图
sns.barplot(x='x',y='y',data=data)
点图
sns.pointplot(x='x',y='y',data=data)
多层面板分析图
sns.factorplot(x='x',y='y',data=data,kind=bar)
不加kind默认折线图 bar:柱状图 swam:圣诞树点图
box:盒线图
热力图
sns.heatmap(data)
设置最亮度对应的数值
sns.heatmap(data,vmin=1,vmax=9)
设置最亮与最暗对应的数值
设置中心值
中心值为0,以下为冷图,以上为热图
sns.heatmap(data,center=3)
在图上显示数字
sns.heatmap(data,annot=True)
设置格与格之间的间距
sns.heatmap(data,annot=True,linewidths=5)
隐藏热力柱
cBar=False
设置颜色格式
cmap=’YiGnBa‘
一种颜色格式