散点图可以显示观察数据的分布,描述数据的相关性,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:没弄明白啥作用
原文地址:https://www.cnblogs.com/hgz-dm/p/10886357.html
时间: 2024-11-10 09:52:09