python--seaborn散点图

seaborn是专门用于统计数据可视化的包,可媲美R语言中的ggplot2包。本文介绍用seaborn绘制散点图。

环境

  • python3.9
  • win10 64bit
  • seaborn==0.11.1
  • matplotlib==3.3.4
  • pandas==1.2.1

数据

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
# 设置
pd.options.display.notebook_repr_html=False  # 表格显示
plt.rcParams['figure.dpi'] = 75  # 图形分辨率
sns.set_theme(style='darkgrid')  # 图形主题
# 加载数据
tips=pd.read_csv(r'https://gitee.com/nicedouble/seaborn-data/raw/master/tips.csv')
tips.head()
   total_bill   tip     sex smoker  day    time  size
0       16.99  1.01  Female     No  Sun  Dinner     2
1       10.34  1.66    Male     No  Sun  Dinner     3
2       21.01  3.50    Male     No  Sun  Dinner     3
3       23.68  3.31    Male     No  Sun  Dinner     2
4       24.59  3.61  Female     No  Sun  Dinner     4

绘制

在seaborn中,绘制散点图的函数有scatterplotrelplot
seaborn绘制散点图最简单的方式是使用scatterplot方法,指定data参数和xy参数。

# 散点图
sns.scatterplot(data=tips,x='total_bill',y='tip')
plt.show()
scatter_6_0.png

添加hue参数,设置点的分组颜色。

# 设置hue
sns.scatterplot(data=tips,x='total_bill',y='tip',hue='time')
plt.show()
scatter_8_0.png

添加style参数,设置点的分组样式。

# 设置style
sns.scatterplot(data=tips,x='total_bill',y='tip',style='sex')
plt.show()
scatter_10_0.png

添加size参数,设置点的分组大小。

# 设置size
sns.scatterplot(data=tips,x='total_bill',y='tip',size='size')
plt.show()
scatter_12_0.png

hue,style,size参数可以同时设置多个。

# 同时设置hue,size
sns.scatterplot(data=tips,x='total_bill',y='tip',hue='time',size='size')
plt.show()
scatter_14_0.png

分面散点图用relplot方法绘制,需要设置kind="scatter",然后使用col,row参数分面。

# 按列分面
sns.relplot(data=tips, x="total_bill", y="tip",col="time", hue="day", style="day",kind="scatter")
plt.show()
scatter_16_0.png

更多参考seaborn散点图

你可能感兴趣的:(python--seaborn散点图)