热图heatmap
seaborn.heatmap(data, vmin=None, vmax=None, cmap=None, center=None, robust=None, annot=None, fmt='.2g', annot_kws=None, linewidths=0, linecolor='white', cbar=True, cbar_kws=None, cbar_ax=None, square=False, xticlabels='auto', yticklabels='auto', mask=None, ax=Node, **kwargs)
- 参数解释:
data
- 矩阵数据集。可强制转换为2维数据集。如果提供了DataFrame数据,索引/列信息将用于标记列和行。
vmin
,vmax
- 浮点型数据,可选参数。
用于锚定色彩映射的值。
cmap
- matplotlib颜色条名称或对象,或颜色列表,可选参数。
从数据值到颜色空间的映射。默认值取决于是否设置了'center'。
center
- 浮点数, 可选参数。
绘制有色数据时将色彩映射居中的值。如果没有设置,则使用该参数将更改默认的cmap。
robust
- bool值,可选参数。
若为True,且vmin
或vmax
为空,则使用稳健分位数而不是极值来计算色彩映射范围。
annot
- bool值或矩形数据,可选参数。
True表示在每个热力图单元格中写入数据值。如果数组的形状和data相同,则用它来代替原始数据注释热力图。
fmt
- 字符串,可选参数。
添加注释时要使用的字符串格式代码。
annot_kws
- 字典或键值对,可选参数。
当annot
为True时,ax.text的关键字参数。
linewidths
- 浮点数,可选参数。 划分每个单元格的行的宽度。
linecolor
- 颜色,可选参数。划分每个单元格的线条的颜色。
cbar
- bool值,可选参数。 是否绘制颜色条。
cbar_kws
- 字典或键值对,可选参数。fig.colorbara的关键字参数。
cbar_ax
- matplotlib Axes, 可选参数。 用于绘制颜色条的轴,否则从主轴获取。
square
- bool值,可选参数。 True表示每个单元格为方形。
xticlabels
,yticklabels
- 'auto', bool值,类列表值或整型数值,可选参数。
True表示绘制数据框的列名称。如果是列表,则将标签绘制为xticklabels。如果是整数,则使用列名称,但仅绘制每个n标签。
mask
- bool值或DataFrame数据,可选参数。 如果是空值,数据不会显示在mask
为True的单元格中,具有缺失值的单元格自动被屏蔽。
ax
- matplotlib Axes, 可选参数。绘制图的坐标轴。
kwargs
- 其他关键字参数。 都传递给ax.pcolomesh。 - 示例
sns.set_style('dark')
plt.figure(figsize=(10,8))
# 提取特征名
colnm = data.columns.tolist()[:11] + ['total acid', 'quality']
# 计算协相关
mcorr = data[colnm].corr() # 相关矩阵
mask = np.zeros_like(mcorr, dtype=np.bool) # 构造一个零数组,形状和mcorr矩阵相同、数据类型为bool,默认为False
mask[np.triu_indices_from(mask)] = True # 把上三角矩阵的值改为True
cmap = sns.diverging_palette(220, 10, as_cmap=True) # 设置颜色
sns.heatmap(mcorr, mask=mask, cmap=cmap, square=True, annot=True, fmt='0.2f')
线性回归图regplot
sns.regplot(x=None, y=None, data=None, x_estimator=None, x_bins=None, x_ci='ci', scatter=True, fit_reg=True, ci=95, n_boot=1000, units=None, seed=None, order=1, logistic=False, lowess=False, robust=False, logx=False, x_partial=None, y_partial=None, truncate=True, dropna=True, x_jitter=None, y_jitter=None, label=None, color=None, marker='o', scatter_kws=None, line_kws=None, ax=None)
- 参数解释:
x
,y
- x轴、y轴坐标轴名称。字符串, 序列, or 向量数组
data
- 数据。类型为DataFrame。
scatter
- True表示绘制一个散点图。类型为bool值,可选参数。
fit_reg
- True表示绘制回归直线。
label
- 用于散点图或回归线的标签。
color
- 设置颜色
marker
- 散点图的标记,默认为'o'(圆点)
scatter_kws - 传递给plt.scatter的其他关键字参数。
line_kws - 传递给plt.plot的其他关键字参数。
ax
- 轴对象 - 示例
sns.set_style('ticks')
plt.figure(figsize=(6,4)) # 设置图表大小
sns.regplot(x='density', # x轴标签
y='alcohol', # y轴标签
data=data, # 数据
color=color[2], # 设置颜色
scatter_kws={'s': 10}) # 设置样本点大小
plt.xlim(0.989, 1.005) # x轴取值范围
plt.ylim(7, 16) # y轴取值范围
回归模型图lmplot
seaborn.lmplot( x=None, y=None, data=None, hue=None, col=None, row=None, palette=None, col_wrap=None, height=5, aspect=1, markers='o', sharex=True, sharey=True, hue_order=None, col_order=None, row_order=None, legend=True, legend_out=True, x_estimator=None, x_bins=None, x_ci='ci', scatter=True, fit_reg=True, ci=95, n_boot=1000, units=None, seed=None, order=1, logistic=False, lowess=False, robust=False, logx=False, x_partial=None, y_partial=None, truncate=True, x_jitter=None, y_jitter=None, scatter_kws=None, line_kws=None, size=None)
-
参数解释:
x
- x轴变量,数据data
的列名。
y
- y轴变量,数据data
的列名。
data
- 数据。
hue
,col
,row
- 一个变量,用于分类,将data
分成几个子集。数据data
的列名。-
hue
将子集显示在一张图中; -
col
根据变量的不同值,一个子集一张图,横向排列; -
row
根据变量的不同值,一个子集一张图,纵向排列。
palette
- 调色盘
col_wrap
- 指定每行的列数,最多等于col参数所对应的不同类别的数量。类型为int。
order
- 控制进行回归的幂次(一次以上即是多项式回归)。类型为int。
sharex
,sharey
- 是否共享x、y轴。True表示共享x、y轴。
scatter_kws
- 传递给plt.scatter的其他关键字参数。
line_kws
- 传递给plt.plot的其他关键字参数。
fit_reg
- True表示绘制回归直线。
size
- 设置子图大小。
aspect
- 每个子图的长宽比。 -
示例
plt. style.use('ggplot')
sns.lmplot(x='alcohol', y='volatile acidity', data=data,
hue='quality', # 根据属性'quality'分类
scatter_kws={'s': 10}, # 设置散点大小
fit_reg=False) # 不显示回归线
# 先用hue把不同分类标为不同颜色,用col分开显示类别,用col_warp指定每行显示几个类别。
sns.lmplot(x='alcohol', y='volatile acidity', data=data,
hue='quality', # 根据属性'quality'分类
col='quality', # 属性'quality',一个类别一个图表
col_wrap=3, # 设置每行显示的图表个数
fit_reg=False, # 不显示回归线
aspect=0.9, # 每个子图的长宽比
scatter_kws={'s': 20},
size=3) # 设置子图大小