zoukankan      html  css  js  c++  java
  • 用seaborn绘制散点图

           散点图可以显示观察数据的分布,描述数据的相关性,matlibplot也可以绘制散点图,不过我一般优先使用seaborn库的sctterplot()绘制,下面就介绍一下如何用seaborn.scatterplot()绘制散点图。

    1. sctterplot()参数说明

    • x,y:输入的绘图数据,必须是数值型数据
    • hue:对输入数据进行分组的序列,使用不同颜色对各组的数据加以区分。下面是一个例子
    ar=np.random.randn(20,4)
    df=pd.DataFrame(a,columns=['a','b','c','d'])
    df['e']=pd.Series(['one','one','one','one','one','one','two','two','two','two','two','two','two','two',
                       'three','three','three','three','three','three'])
    sns.scatterplot(df['a'],df['b'],hue=df['e'])

                                  

    • size:对输入数据进行分组的序列,使用不同点尺寸对各组的数据加以区分。下面是一个例子
    #sns.scatterplot(df['a'],df['b'],size=df['e'])  #左图,没有加上hue参数
    sns.scatterplot(df['a'],df['b'],hue=df['e'],size=df['e'])  #右图,加上hue参数

        

    • style:对输入数据进行分组的序列,使用不同点标记对各组的数据加以区分。下面是一个例子
    sns.scatterplot(df['a'],df['b'],hue=df['e'],size=df['e'],style=df['e']) 

                                        

    • data:pandas.DataFrame型参数,不能包含非数值型数据,否则会报错。使用该参数的好处为下列两种情况之一
    #第一种情况,快捷的绘制DataFrame内每一列的数据
    sns.scatterplot(data=df)
    
    #第二种情况,输入绘图的x,y变量时,可以写简单一点
    sns.scatterplot('a','b',data=df)
    • palette:在对数据进行分组时,设置不同组数据的显示颜色。hue参数使用的是默认的颜色,如果需要更多的颜色选项,则需要通过调色盘来设置,可以使用seaborn.color_palette()函数来设置颜色
    • hue_order:在使用hue参数对数据进行分组时,可以通过该参数设置数据组的显示顺序,例如
    num=np.random.randn(10,4)
    df=pd.DataFrame(num,columns=['a','b','c','d'])
    df['e']=pd.Series(list('xxxyyyzzzz'))
    sns.scatterplot('a','b',hue=df['e'],data=df,hue_order=['z','y','x'])
    • hue_norm:该参数的作用我暂时没弄明白,先跳过
    • sizes:当使用size参数、以不同尺寸显示不同组数据时,可以通过sizes参数来设定具体的尺寸大小。该参数可以传入一个尺寸序列,也可以传入一个包含两个元素的元祖,分别制定尺寸的上下限。
    • size_order:和hue_order参数作用一样,不过设置的是尺寸的显示顺序
    • size_norm:和hue_norm参数一样,没有弄明白是什么意思
    • markers:当使用style参数、以不同的标记显示不同组数据时,可以通过该参数设置不同组数据的标记
    • style_order:和hue_order参数作用一样,不过设置的是标记的显示顺序
    • {x,y}_bins:没弄明白啥作用
  • 相关阅读:
    二分思想判断数组中是否有两数和为sum
    VC中#pragma warning指令
    (转)预编译头文件
    成为一名优秀程序员所需要知道的那些事
    SetThreadAffinityMask设置使用多核CPU的哪个核心
    DirectX 3D 设备丢失(lost device)的处理
    转载 CreateWaitableTimer和SetWaitableTimer函数
    转赵青《剑侠情缘网络版》开发回顾
    转载使用PostThreadMessage在Win32线程间传递消息
    VC使用CRT调试功能检测内存泄漏
  • 原文地址:https://www.cnblogs.com/hgz-dm/p/10886357.html
Copyright © 2011-2022 走看看