精美!20个Seaborn多变量pairplot图
本文记录的使用seaborn绘制pairplot图,主要是用来显示两两变量之间的关系,官网学习地址:
https://seaborn.pydata.org/generated/seaborn.pairplot.html
参数
主要参数为:
1 | seaborn.pairplot(data, # 绘图数据 |
导入数据
1 | import pandas as pd |
导入seaborn中默认的数据集:
默认情况
In [3]:
1 | sns.pairplot(df) |
参数kind
空值非对角线上图形的类型,选择为
In [4]:
1 | sns.pairplot(df, kind="kde") |
1 | sns.pairplot(df, kind="hist") |
1 | sns.pairplot(df, kind="reg") # 使用回归 |
参数hue
主要是用来进行分类
In [7]:
1 | sns.pairplot(df, hue="species") |
1 | sns.pairplot(df, hue="sex") |
参数diag_kind
控制对角线上的图的类型,可选"hist"与"kde"
In [9]:
1 | sns.pairplot(df, hue="species", diag_kind="hist") |
参数palette
主要是用来控制色调,下面是收集到的色系:
1 | Accent, Accent_r, Blues, Blues_r, BrBG, BrBG_r, BuGn, BuGn_r, BuPu, BuPu_r, CMRmap, CMRmap_r, Dark2, Dark2_r, GnBu, GnBu_r, Greens, Greens_r, Greys, Greys_r, OrRd, OrRd_r, Oranges, Oranges_r, PRGn, PRGn_r, Paired, Paired_r, Pastel1, Pastel1_r, Pastel2, Pastel2_r, PiYG, PiYG_r, PuBu, PuBuGn, PuBuGn_r, PuBu_r, PuOr, PuOr_r, PuRd, PuRd_r, Purples, Purples_r, RdBu, RdBu_r, RdGy, RdGy_r, RdPu, RdPu_r, RdYlBu, RdYlBu_r, RdYlGn, RdYlGn_r, Reds, Reds_r, Set1, Set1_r, Set2, Set2_r, Set3, Set3_r, Spectral, Spectral_r, Wistia, Wistia_r, YlGn, YlGnBu, YlGnBu_r, YlGn_r, YlOrBr, YlOrBr_r, YlOrRd, YlOrRd_r, afmhot, afmhot_r, autumn, autumn_r, binary, binary_r, bone, bone_r, brg, brg_r, bwr, bwr_r, cividis, cividis_r, cool, cool_r, coolwarm, coolwarm_r, copper, copper_r, crest, crest_r, cubehelix, cubehelix_r, flag, flag_r, flare, flare_r, gist_earth, gist_earth_r, gist_gray, gist_gray_r, gist_heat, gist_heat_r, gist_ncar, gist_ncar_r, gist_rainbow, gist_rainbow_r, gist_stern, gist_stern_r, gist_yarg, gist_yarg_r, gnuplot, gnuplot2, gnuplot2_r, gnuplot_r, gray, gray_r, hot, hot_r, hsv, hsv_r, icefire, icefire_r, inferno, inferno_r, jet, jet_r, magma, magma_r, mako, mako_r, nipy_spectral, nipy_spectral_r, ocean, ocean_r, pink, pink_r, plasma, plasma_r, prism, prism_r, rainbow, rainbow_r, rocket, rocket_r, seismic, seismic_r, spring, spring_r, summer, summer_r, tab10, tab10_r, tab20, tab20_r, tab20b, tab20b_r, tab20c, tab20c_r, terrain, terrain_r, twilight, twilight_r, twilight_shifted, twilight_shifted_r, viridis, viridis_r, vlag, vlag_r, winter, winter_r |
In [10]:
1 | sns.pairplot(df,hue="species",palette="husl") |
参数markers
In [13]:
1 | sns.pairplot(df, hue="species", diag_kind="hist", markers=["o", "s", "D"]) |
参数height
控制整个图形的大小
In [14]:
1 | sns.pairplot(df, height=1.5) |
1 | sns.pairplot(df, height=4) |
参数aspect
用来控制图形的宽度,默认是1,显示效果为:
1 | sns.pairplot(df, hue="species", aspect=3) |
参数corner
只展示一半的图形,整体的图形是关于主对角线对称的
In [16]:
1 | sns.pairplot(df, corner=True) |
参数vars
控制需要显示的变量
In [17]:
1 | df.columns |
Out[17]:
1 | Index(['species', 'island', 'bill_length_mm', 'bill_depth_mm', |
In [18]:
1 | sns.pairplot(df,vars=["island","bill_length_mm","sex"]) |
参数-x_vars/y_vars
必须同时指定
In [19]:
1 | sns.pairplot( |
参数-plot_kws/diag_kws
- plot_kws:用于控制非对角线上的图的样式
- diag_kws:用于控制对角线上图的样式
In [20]:
1 | sns.pairplot( |
1 | sns.pairplot(df, |
参数-dropna
缺失值的处理,默认是
In [22]:
1 | sns.pairplot(df, dropna=True) |
返回值-PairGrid
关于返回值的自定义内容请参考官网:
https://seaborn.pydata.org/generated/seaborn.PairGrid.html#seaborn.PairGrid
In [24]:
1 | g = sns.pairplot(df, diag_kind="kde") |