用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:没弄明白啥作用

原文地址:https://www.cnblogs.com/hgz-dm/p/10886357.html

时间: 2024-11-10 09:52:09

用seaborn绘制散点图的相关文章

【Python】使用scatter()绘制散点图

绘制简单散点图 要绘制单个点,使用scatter()函数,并向它传递一对x和y坐标,它将在指定位置绘制一个点 import matplotlib.pyplot as plt plt.scatter(2,4) plt.show() 运行结果: 图形美化 下面设置输出样式,使其更有趣:添加标题,给轴加上标签 import matplotlib.pyplot as plt plt.scatter(2,4,s=200) #设置标题并加上轴标签 plt.title("Squares Numbers&quo

2. matplotlib绘制散点图

与绘制直线图的唯一区别:plt.scatter # coding=utf-8 from matplotlib import pyplot as plt from matplotlib import font_manager my_font = font_manager.FontProperties(fname="/System/Library/Fonts/Hiragino Sans GB.ttc") y_3 = [11,17,16,11,12,11,12,6,6,7,8,9,12,15

matplotlib库绘制散点图

假设通过爬虫你获取到了北京2016年3,10月份每天白天的最高气温(分别位于列表a,b),那么此时如何寻找出气温随时间(天)变化的某种规律? a = [11,17,16,11,12,11,12,6,6,7,8,9,12,15,14,17,18,21,16,17,20,14,15,15,15,19,21,22,22,22,23]b = [26,26,28,19,21,17,16,19,18,20,20,19,22,23,17,20,21,20,22,15,11,15,5,13,17,10,11,1

d3 绘制散点图

之前看了angularjs,又看了看d3 on angularjs这本书,本来打算使用angularjs,结果把npm玩坏了,现在都没修好,只好先单独用d3绘制了. 先贴代码: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>d3</title> 6 <script src=&q

D3.js 绘制散点图

对于散点图,使用的数组需要包含坐标元素,即 x, y.同时,散点图需要使用 circle 元素. var svg = d2.select("body") .append("svg") .attr({ width:w, height:h }) svg.selectAll("circle") .data(dataset) .enter() .append("circle") .attr("cx",functio

从excel 导入数据绘制 散点图

import xlrdimport matplotlib.pyplot as plt bok = xlrd.open_workbook(r'test.xls') sht = bok.sheets()[0] row1 = sht.row_values(0) X=sht.col_values(0 , start_rowx=0, end_rowx=None) Y=sht.col_values(1 , start_rowx=0, end_rowx=None) plt.plot(X,Y,"ro"

pandas绘制散点图矩阵 scatter_matrix函数报错问题

在使用 pd.scatter_matrix() 函数时会出现 module 'pandas' has no attribute 'scatter_matrix'错误 解决方法: 将代码改成: pd.plotting.scatter_matrix() 这个就可以显示出散点图矩阵了 完整代码: iris_dataframe = pd.DataFrame(X_train, columns=iris_dataset.feature_names) grr = pd.plotting.scatter_mat

吴裕雄 数据挖掘与分析案例实战(6)——线性回归预测模型

# 工作年限与收入之间的散点图# 导入第三方模块import pandas as pdimport seaborn as snsimport matplotlib.pyplot as plt # 导入数据集income = pd.read_csv(r'F:\\python_Data_analysis_and_mining\\07\\Salary_Data.csv')print(income.shape)print(income.head())# 绘制散点图sns.lmplot(x = 'Year

如何用Python搭建一个简单的推荐系统?

推荐系统的相关知识我们已在前文中提到,在这篇文章中,我们会介绍如何用Python来搭建一个简单的推荐系统. 本文使用的数据集是MovieLens数据集,该数据集由明尼苏达大学的Grouplens研究小组整理.它包含1,10和2亿个评级. Movielens还有一个网站,我们可以注册,撰写评论并获得电影推荐.接下来我们就开始实战演练. 在这篇文章中,我们会使用Movielens构建一个基于item的简易的推荐系统.在开始前,第一件事就是导入pandas和numPy. import pandas a