title: 学习 seaborn [01]: 散点图 & 线型图 slug: seaborn-scatter-line date: 2020-11-30 tags:
- seaborn
- python category: 数据分析 link: description: type: text
可视化统计关系
表示统计关系的图分为散点图和线型图两类。统一的FacetGrid图级接口函数为relplot()。
散点图
| 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 |
| ... | ... | ... | ... | ... | ... | ... | ... |
| 239 | 29.03 | 5.92 | Male | No | Sat | Dinner | 3 |
| 240 | 27.18 | 2.00 | Female | Yes | Sat | Dinner | 2 |
| 241 | 22.67 | 2.00 | Male | Yes | Sat | Dinner | 2 |
| 242 | 17.82 | 1.75 | Male | No | Sat | Dinner | 2 |
| 243 | 18.78 | 3.00 | Female | No | Thur | Dinner | 2 |
244 rows × 7 columns
绘制x、y二维关系
x、y必须是数值型
绘制散点图方法有两种:
- relplot(),为scatterplot()和lineplot()的统一接口,默认绘制散点图,为FacetGrid图像级别接口,可绘制多个子图;
- scatterplot(),为ax基础轴级函数,无法绘制子图,使用hue, size, style 这三个参数来控制绘图属性,用法类似relplot();
用不同元素颜色表示第三维变量
第三维数据必须是离散、有限的。
| |
用不同元素尺寸表示第三维变量
| |
用不同元素样式表示第三维变量
| |
同时使用元素的颜色和样式表示第三维、第四维变量
一般从元素的颜色、尺寸、样式三这种选其二同时使用,三者同时使用时图像在视觉上比较混乱。
| |
使用列表示第三维变量
col_wrap参数控制每列的图像数量。
col_order参数控制图像顺序。
使用行、列表示第三、第四维变量
| |
增加第三、四、五、六维变量
除x、y以外,元素颜色、样式、尺寸三选其二,加上行、列,可以表示第三、四、五、六维变量。
线型图
x、y必须是数值型
绘制散点图方法有两种:
- relplot(kind=‘line’),为FacetGrid图像级别接口,可绘制多个子图;
- lineplot(),为ax基础轴级函数,无法绘制子图,使用hue, size, style 这三个参数来控制绘图属性,用法类似relplot();
| subject | timepoint | event | region | signal | |
|---|---|---|---|---|---|
| 0 | s13 | 18 | stim | parietal | -0.017552 |
| 1 | s5 | 14 | stim | parietal | -0.080883 |
| 2 | s12 | 18 | stim | parietal | -0.081033 |
| 3 | s11 | 18 | stim | parietal | -0.046134 |
| 4 | s10 | 18 | stim | parietal | -0.037970 |
| ... | ... | ... | ... | ... | ... |
| 1059 | s0 | 8 | cue | frontal | 0.018165 |
| 1060 | s13 | 7 | cue | frontal | -0.029130 |
| 1061 | s12 | 7 | cue | frontal | -0.004939 |
| 1062 | s11 | 7 | cue | frontal | -0.025367 |
| 1063 | s0 | 0 | cue | parietal | -0.006899 |
1064 rows × 5 columns
| |
表示x、y以外维度变量
类似散点图,可使用hue、style、size来表示第三、第四维变量,也可使用relplot()增加多行多列表示更多维度变量。
| |
style参数默认改变线型,使用markers和dashes参数改变标记样式,保持线型不变。
不显示误差带,显示每个点的离散误差棒表示置信区间
err_style控制是否用半透明误差带或离散误差棒绘制置信区间,取值有两个:
- band:用半透明误差带
- bars:离散误差棒
ci控制置信区间大小,取值为整数、sd或None。