大数据分析-Seabon中的图例

1、数据分布可视化

1.1 直方图和密度函数
"""
seabon是专门的数据可视化包
    1.数据分布可视化
"""
from sklearn.datasets import load_iris
import numpy as np
iris=load_iris()
# 将数据转换成DataFrame格式
from pandas import DataFrame
df=DataFrame(iris.data,columns=iris.feature_names)
df['target']=iris.target
import pandas as pd
from scipy import stats,integrate
import matplotlib.pyplot as plt
import seaborn as  sns
sns.set(color_codes=True)
# #set( )设置主题,调色板更常用
sns.distplot(df['petal length (cm)'],bins=15)
# distplot()默认绘出数据的直方图和密度函数,直方图bins(柱)的数目,
# 若填None,则默认使用Freedman-Diaconis规则指定柱的数目。
plt.show()

在这里插入图片描述

1.2散点图和直方图
"""
x=, y=, #设置xy轴,显示columns名称
              data = df,  #设置数据
              color = 'b', #设置颜色
              s = 50, edgecolor = 'w', linewidth = 1,#设置散点大小、边缘颜色及宽度(只针对scatter)
              stat_func=sci.pearsonr,
              kind = 'scatter',#设置类型:'scatter','reg','resid','kde','hex'
              space = 0.1, #设置散点图和布局图的间距
              size = 8, #图表大小(自动调整为正方形))
              ratio = 5, #散点图与布局图高度比,整型
              marginal_kws = dict(bins=15, rug =True), #设置柱状图箱数,是否设置rug

"""
sns.jointplot(x="sepal length (cm)",y="sepal width (cm)",data=df,size=8)
plt.show()

``![在这里插入图片描述](https://img-blog.csdnimg.cn/20200511163159892.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ5Mzcy,size_16,color_FFFFFF,t_70)
#### 1.3分组散点图

“”"
分组散点图:
sns.FaceGrid()函数来实现
g.map(plt.scatter) #绘制散点图,设置横纵轴,设置透明度
g.add_legend() #加上图标注的图例
设置参数hue,分类显示
“”"
sns.FacetGrid(df,hue=‘target’,size=8).map(plt.scatter,‘sepal length (cm)’,‘sepal width (cm)’).add_legend()
plt.show()

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200511164947235.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ5Mzcy,size_16,color_FFFFFF,t_70)
#### 1.4 六边图

“”"
六边图:
样式控制:axes_style() and set_style()
有5个seaborn的主题,适用于不同的应用和人群偏好:
darkgrid 黑色网格(默认)
whitegrid 白色网格
dark 黑色背景
white 白色背景
ticks 应该是四周都有刻度线的白背景
x=, y=, #设置xy轴,显示columns名称
data = df, #设置数据
color = ‘b’, #设置颜色
s = 50, edgecolor = ‘w’, linewidth = 1,#设置散点大小、边缘颜色及宽度(只针对scatter)
stat_func=sci.pearsonr,
kind = ‘scatter’,#设置类型:‘scatter’,‘reg’,‘resid’,‘kde’,‘hex’
space = 0.1, #设置散点图和布局图的间距
size = 8, #图表大小(自动调整为正方形))
ratio = 5, #散点图与布局图高度比,整型
marginal_kws = dict(bins=15, rug =True), #设置柱状图箱数,是否设置rug

“”"
sns.axes_style(‘white’)
sns.jointplot(x=“sepal length (cm)”,y=“sepal width (cm)”,data=df,kind=“hex”,color=‘k’)
plt.show()

![在这里插入图片描述](https://img-blog.csdnimg.cn/2020051116552065.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ5Mzcy,size_16,color_FFFFFF,t_70)
#### 1.5 二维核密度估计图

“”"
二维核密度估计图:用来估计未知密度函数
核密度估算(Kernel Density Estimation,KDE) 概率论中用来估计未知的密度函数
属于非参数检验的方法之一
“”"
g=sns.jointplot(x=“sepal length (cm)”,y=“sepal width (cm)”,data=df,kind=“kde”,color=‘m’)
plt.show()

加入散点图

g.plot_joint(plt.scatter,c=“w”,s=30,linewidth=1,marker=’+’)
g.ax_joint.collections[0].set_alpha(0);
plt.show()

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200511170618756.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ5Mzcy,size_16,color_FFFFFF,t_70)

![在这里插入图片描述](https://img-blog.csdnimg.cn/2020051117063484.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ5Mzcy,size_16,color_FFFFFF,t_70)
#### 1.6矩阵散点图

“”"
矩阵散点图:
当同时考察多个变量之间的关系的时候,可以利用矩阵散点图同时绘制出各个变量之间的散点图,这样可以快速的发现多个变量之间的相关性
使用PairGrid()和pairlot()函数绘制出成对关系图
PairGrid()允许使用相同的绘图类型快速绘制子图的网格,在每一个子图中显示数据,每一行和每一列都会分配不同的变量
所以会生成成对变量之间的关系。
首先初始化网络,然后将绘图函数传递给map方法,并在每一个子图上面调用它
“”"
g=sns.PairGrid(df)
g.map(plt.scatter)
plt.show()

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200511171758383.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ5Mzcy,size_16,color_FFFFFF,t_70)
## 热力图

“”"
热力图:在不同的地方按照不同的颜色来表达区域数据的大小的图形
应用的地方很多,最常见的是热力地图,相关系数矩阵的展示,使用Seaborn
中的heatmap()函数实现
“”"
from sklearn.datasets import load_iris
import numpy as np
import pandas as pd

iris = load_iris()

from pandas import DataFrame

df = DataFrame(iris.data, columns=iris.feature_names)
df[“target”] = iris.target

from scipy import stats, integrate
from matplotlib import pyplot as plt
import seaborn as sns
import numpy as np

newdata = df
datacor = np.corrcoef(newdata, rowvar=0)

np.corrcoef 计算两组数据的皮尔逊积矩相关系数,接受的参数是一个矩阵,返回的结果也是一个矩阵

datacor = pd.DataFrame(data=datacor, columns=newdata.columns, index=newdata.columns)

形式1

mask = np.zeros_like(datacor)
mask[np.triu_indices_from(mask)] = True
plt.figure(figsize=(8, 8))
with sns.axes_style(“white”):
ax = sns.heatmap(datacor, mask=mask, square=True, annot=True)
ax.set_title(“Iris data Vatiables Relation”)

形式2

plt.figure(figsize=(8, 8))
with sns.axes_style(“white”):
ax = sns.heatmap(datacor, square=True, annot=True, fmt=“f”)
ax.set_title(“Iris data Vatiables Relation”)
plt.show()

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200511172626348.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ5Mzcy,size_16,color_FFFFFF,t_70)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200511172642884.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ5Mzcy,size_16,color_FFFFFF,t_70)

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值