如何用Seaborn描绘线图,分面网格关联图,密度图,连接图,热力图,线性回归图,分面网格绘图
作者:互联网
事前准备请看之前的文章0o0!
线图
data = {
'apple':[4,0,7,8],
'orange':[3,5,6,7],
'bananas':[6,4,5,3]
}
df = pd.DataFrame(data,index=['a','b','c','d'])
df
plt.figure(dpi=150)
sns.lineplot(data=df)#一列一条线
导入数据
tips = sns.load_dataset("tips")
tips.head()
plt.figure(dpi=150)
sns.lineplot(x= 'total_bill',y='tip',data=tips)
sns.lineplot(x = 'total_bill',y='tip',hue='sex',data=tips)
plt.figure(dpi=150)
sns.lineplot(x = 'total_bill',y='tip',hue='sex',size='smoker',style='time',data=tips)
mpg_df = sns.load_dataset("mpg")
mpg_df
g = sns.relplot(x="displacement",y="mpg",data=mpg_df)#默认散点图
g = sns.relplot(x="displacement",y="mpg",col="cylinders",data=mpg_df)
g = sns.relplot(x="displacement",y="mpg",col="cylinders",row="origin",data=mpg_df)
g = sns.relplot(x="displacement",y="mpg",col="cylinders",hue="origin",col_wrap=3,data=mpg_df)
g = sns.relplot(x="displacement",y="mpg",col="cylinders",hue="origin",col_wrap=3,kind="line",data=mpg_df)
密度图(双变量)
n=1024
x = np.random.normal(0,1,n)
y = np.random.normal(0,1,n)
g = sns.kdeplot(x,y)
g = sns.kdeplot(x,y,shade=True)
连接图
n=1024
x = np.random.normal(0,1,n)
y = np.random.normal(0,1,n)
g = sns.jointplot(x,y)
g = sns.jointplot(x,y,kind="reg")
g = sns.jointplot(x,y,kind="kde")
g = sns.jointplot(x,y,kind="hex")
热力图
df = pd.DataFrame(np.random.rand(10,10),columns=list('abcdefghij'))
df
sns.heatmap(df)
sns.heatmap(df,cmap="Greens")
sns.heatmap(df,cmap="Greens",vmin=0,vmax=0.5)#设置最大值最小值
sns.heatmap(df,cmap="Greens",annot=True)
线性回归图
sns.regplot(x='total_bill',y = 'tip',data=tips)
分面网格线性回归图
sns.lmplot(x='total_bill',y = 'tip',hue='sex',data=tips,col='size',col_wrap=3)
分面网格绘制
g = sns.FacetGrid(mpg_df,col="origin")
g.map(sns.distplot,"mpg")
g = sns.FacetGrid(mpg_df,col="origin")
g.map(sns.kdeplot,"mpg")
标签:mpg,Seaborn,df,网格,分面,sns,tips,data,col 来源: https://blog.csdn.net/dongzixian/article/details/102761305