美文网首页
seaborn 分类category

seaborn 分类category

作者: 怂恿的大脑 | 来源:发表于2017-12-24 00:46 被阅读121次

    ## 一、导入常用包

    import pandas as pd

    import numpy as np

    import seaborn as sns

    import matplotlib as mlp

    import matplotlib.pyplot as plt

    ## 二、导入seanborn内置数据集’tips‘

    titanic = sns.load_dataset("titanic")

    tips = sns.load_dataset("tips")

    iris = sns.load_dataset("iris")

    ## 四、重点 多变量回归分析

    # 对于星期几,只有1234567这几个类别值,这样的数据如何很好的可视化展示,重要

    #对于类别可以用stripplot,并不推荐大家使用,因为堆在一块了某天的,通常数据量比较大。这个是需要我们解决的问题,解决堆积问题

    sns.stripplot(x="day",y="total_bill",data=tips)

    #方案1 还是stripplot,但是加上jitter ,jitter=true,即要把我这个点进行偏,随机偏动,更清晰展示

    #重叠是很常见的现象,但是重叠营销了我观察数据的量了

    sns.stripplot(x="day",y="total_bill",data=tips,jitter=True)

    #方案2 用 看起来像数一样,用swarmplot函数,类似圣诞树,这个比较好比上个,还可以加上一个属性,加上一个hue指标,通用的参数这是hue等

    sns.swarmplot(x="day",y="total_bill",data=tips,hue="sex")

    ##横竖着话,x和y调过来即可

    ##五、盒图,一般情况下数据并不是那么的好,会有离群值(异常值),sns.boxplot,传入x,传入y,传入data

    # IQR即统计学概念四分位距离,即第一/四分位与第三/四分位之间的距离

    # N=1.5IQR 如果一个值>Q3+N,或者<Q1-N,则为离群点,两个横杠表示最大值,最小值,菱形表示离群点

    sns.boxplot(x='day',y="total_bill",hue='time',data=tips)

    plt.show()

    #六、琴形图,越胖出现的次数越多,越瘦出现的次数越小,可以指定split属性,即左边一个属性,右边一个属性,split=true

    sns.violinplot(x='total_bill',y='day',hue='time',data=tips)

    sns.violinplot(x='total_bill',y='day',hue='sex',data=tips,split=True)

    ## 七、图合并,alpha=.5代表透明程度,

    sns.violinplot(x='day',y='total_bill',data=tips,inner=None)

    sns.swarmplot(x='day',y='total_bill',data=tips,color = 'w',alpha=.5)

    ## 八、条形图barplot,可以分组

    ##数据集是泰坦尼克号数据集,class是头等舱、二等舱、三等舱,y是获救率

    sns.barplot(x='sex',y='survived',hue='class',data=titanic)

    ##点图,可以更好的描述变化差异,点图pointplot.用的蛮多的,linestyles是线形(折线图)

    sns.pointplot(x='sex',y='survived',hue='class',data=titanic)

    ##点图,参数化设置

    sns.pointplot(x='class',y='survived',hue='sex',data=titanic,

    palette={'male':'g',"female":"m"},

    markers=["^","o"],linestyles=['-','--']) #palette用大括号,其他的用中括号记住

    ##九、多层面板分类图(常用的)factorplot,在这里可以画各种图,只要把kind指定好即可

    sns.factorplot(x='day',y="total_bill",hue="smoker",data=tips)

    sns.factorplot(x='day',y='total_bill',hue='smoker',data=tips,kind='bar')

    sns.factorplot(x='day',y='total_bill',hue="smoker",col="time",data=tips,kind='swarm')

    sns.factorplot(x="time", y="total_bill", hue="smoker",

    col="day", data=tips, kind="box", size=4, aspect=1) #size空间大小,慢慢自己把握

    参数解释

    seaborn.factorplot(x=None, y=None, hue=None, data=None, row=None, col=None, col_wrap=None, estimator=<function mean>, ci=95, n_boot=1000, units=None, order=None, hue_order=None, row_order=None, col_order=None, kind='point', size=4, aspect=1, orient=None, color=None, palette=None, legend=True, legend_out=True, sharex=True, sharey=True, margin_titles=False, facet_kws=None, **kwargs)

    ### Parameters: ###

    * x,y,hue 数据集变量 变量名

    * date 数据集 数据集名

    * row,col 更多分类变量进行平铺显示 变量名

    * col_wrap 每行的最高平铺数 整数

    * estimator 在每个分类中进行矢量到标量的映射 矢量

    * ci 置信区间 浮点数或None

    * n_boot 计算置信区间时使用的引导迭代次数 整数

    * units 采样单元的标识符,用于执行多级引导和重复测量设计 数据变量或向量数据

    * order, hue_order 对应排序列表 字符串列表

    * row_order, col_order 对应排序列表 字符串列表

    * kind : 可选:point 默认, bar 柱形图, count 频次, box 箱体, violin 提琴, strip 散点,swarm 分散点

    size 每个面的高度(英寸) 标量

    aspect 纵横比 标量

    orient 方向 "v"/"h"

    color 颜色 matplotlib颜色

    palette 调色板 seaborn颜色色板或字典

    legend hue的信息面板 True/False

    legend_out 是否扩展图形,并将信息框绘制在中心右边 True/False

    share{x,y} 共享轴线 True/False

    完整笔记+图片链接地址

    相关文章

      网友评论

          本文标题:seaborn 分类category

          本文链接:https://www.haomeiwen.com/subject/nbscgxtx.html