![634fbc96382332b7c87e238f6986259b.png](https://i-blog.csdnimg.cn/blog_migrate/c703bb349f395c92ce8828f5d8050216.jpeg)
Seaborn变量分析绘图
%matplotlib inlineimport numpy as npimport pandas as pdfrom scipy import stats, integrateimport matplotlib.pyplot as pltimport seaborn as snssns.set(color_codes=True)np.random.seed(sum(map(ord, "distributions")))
使用sns.distplot()函数画直方图
x = np.random.normal(size=100)sns.distplot(x,kde=False) #distplot()函数会根据输入数据自动绘制直方图
![9f2025bb098b6e008b3184583b18e5d4.png](https://i-blog.csdnimg.cn/blog_migrate/23f1700f12ada151fab64e0e835893fa.jpeg)
你也可以通过bins自己划分直方图的切分粒度
sns.distplot(x, bins=20, kde=False)
![8d47db415df7039dce05c82aed4a663e.png](https://i-blog.csdnimg.cn/blog_migrate/9acb9c7a0bc0383c1144b3a3bc45c17d.jpeg)
通过fit查看数据分布的情况
x = np.random.gamma(6, size=200)sns.distplot(x, kde=False, fit=stats.gamma)
![da470bb14d3574e9aeede0abbd855a54.png](https://i-blog.csdnimg.cn/blog_migrate/fff815d1f1218de57c30099ef3bdb556.jpeg)
使用jointplot()函数绘制散点图
观测两个变量之间的分布关系最好用散点图
#生成数据mean, cov = [0, 1], [(1, .5), (.5, 1)] #自定义均值与协方差data = np.random.multivariate_normal(mean, cov, 200) #生成200个数据df = pd.DataFrame(data, columns=["x", "y"]) #通过pandas读入数据print(df.head())
x y0 0.585042 1.1626821 0.722117 2.1415802 0.120990 0.4988213 -0.795773 2.0852614 -0.614260 2.215906
sns.jointplot(x="x", y="y", data=df)
![2e9fbee8ae2ea1574e3b3521bb741684.png](https://i-blog.csdnimg.cn/blog_migrate/d384cc211cddc242f4dd4bc775c01805.jpeg)
通过kind="hex"使散点图具备透视性,更加容易查看数据的散点分布密度情况
x, y = np.random.multivariate_normal(mean, cov, 1000).Twith sns.axes_style("white"): sns.jointplot(x=x, y=y, kind="hex", color="k")
![2daacff6de36ec2ee396e3e394fea42f.png](https://i-blog.csdnimg.cn/blog_migrate/dc994fcea00163e206d9b014a82ce991.jpeg)
使用pairplot()函数绘制关系图
两不同变量比较绘制散点图,变量自身比较绘制直方图
iris = sns.load_dataset("iris") #载入鸢尾花数据集sns.pairplot(iris) #绘制
![ae84293ebdc755f7c39497f1b4eb2706.png](https://i-blog.csdnimg.cn/blog_migrate/fe600e6354ce879fc6e440a0c74c300a.jpeg)
参考
[Style functions]http://seaborn.pydata.org/tutorial/aesthetics.html#aesthetics-tutorial
[Color palettes]http://seaborn.pydata.org/tutorial/color_palettes.html#palette-tutorial
[Distribution plots]http://seaborn.pydata.org/tutorial/distributions.html#distribution-tutorial
[Categorical plots]http://seaborn.pydata.org/tutorial/categorical.html#categorical-tutorial
[Regression plots]http://seaborn.pydata.org/tutorial/regression.html#regression-tutorial
[Axis grid objects]http://seaborn.pydata.org/tutorial/axis_grids.html#grid-tutorial
[10分钟python图表绘制]https://zhuanlan.zhihu.com/p/24464836
相关人工智能与异构计算的知识分享,欢迎关注我的公众号【AI异构】