Python散点图矩阵代码模版

本文分享Python seaborn实现散点图矩阵代码模版,节选自👉嫌Matplotlib繁琐?试试Seaborn!

散点图矩阵(scatterplot matrix)展示原始数据中所有变量两两之间关系,可以规避单一统计指标的偏差,可以在平面上快速优雅的探索高维数据。注意区别于前文"分面多子图",散点图矩阵可在每个子图中显示不同变量之间的关系(上三角形和下三角形中的图表互为镜像),格子中也可以使用不同的图形。

seaborn通过pairplot和PairGrid轻松实现散点图矩阵。


散点图矩阵-一行代码

复制代码
sns.pairplot(data=penguins, ).fig.set_dpi(150)  #一行代码

散点图矩阵-高度个性化

复制代码
g = sns.PairGrid(penguins,
                 hue="性别",
                 palette=["#006a8e", "#b1283a"],
                 diag_sharey=False)
g.map_upper(
    sns.scatterplot,
    size=penguins["体重"],  #散点按照"体重"变化
)  #更多参数参考上文章节"7.1 散点图(13种)"
g.map_diag(
    sns.histplot,
    multiple="stack",  #堆叠
)  #更多参数参考上文章节"8.1.12 分组直方图-堆积叠加"
g.map_lower(
    sns.kdeplot,
    fill=True,  #填充
    alpha=0.6,  #透明度
)  #更多参数参考上文章节"8.2 核密度图(16种)"
g.add_legend(title="")
g.fig.set_dpi(150)

换一组palettable中的配色👉palettable实现配色自由

复制代码
g = sns.PairGrid(penguins,
                 hue="性别",
                 palette=palettable.tableau.BlueRed_6.mpl_colors[0:3],
                 diag_sharey=False)
g.map_upper(
    sns.scatterplot,
    size=penguins["体重"],
)
g.map_diag(
    sns.histplot,
    multiple="stack",
)
g.map_lower(
    sns.kdeplot,
    fill=True,
    alpha=0.6,
)
g.add_legend(title="")
g.fig.set_dpi(150)
复制代码
g = sns.PairGrid(penguins,
                 hue="性别",
                 palette=palettable.lightbartlein.diverging.BlueGrey_8_r.mpl_colors[0:3],
                 diag_sharey=False)
g.map_upper(
    sns.scatterplot,
    size=penguins["体重"],
)
g.map_diag(
    sns.histplot,
    multiple="stack",
)
g.map_lower(
    sns.kdeplot,
    fill=True,
    alpha=0.6,
)
g.add_legend(title="")
g.fig.set_dpi(150)
复制代码
g = sns.PairGrid(penguins,
                 hue="性别",
                 palette=palettable.cartocolors.qualitative.Bold_9_r.mpl_colors[0:3],
                 diag_sharey=False)
g.map_upper(
    sns.scatterplot,
    size=penguins["体重"],
)
g.map_diag(
    sns.histplot,
    multiple="stack",
)
g.map_lower(
    sns.kdeplot,
    fill=True,
    alpha=0.6,
)
g.add_legend(title="")
g.fig.set_dpi(150)

更多干货👇

相关推荐
laocooon523857886几秒前
插入法排序 python
开发语言·python·算法
曹牧1 小时前
Java:Assert.isTrue()
java·前端·数据库
程序员葫芦娃1 小时前
【Java毕设项目】基于SSM的旅游资源网站
java·开发语言·数据库·编程·课程设计·旅游·毕设
2401_865854882 小时前
怎样挑选适合业务的数据库云服务?
数据库
lkbhua莱克瓦242 小时前
基础-函数
开发语言·数据库·笔记·sql·mysql·函数
清水白石0082 小时前
《深入 Python 上下文管理器:contextlib.contextmanager 与类实现方式的底层差异全景解析》
开发语言·python
程序员佳佳2 小时前
GPT-4时代终结?GPT-5.2与Banana Pro实测数据公开,普通开发者如何接住这泼天富贵
开发语言·python·gpt·chatgpt·重构·api·midjourney
福大大架构师每日一题2 小时前
dify 1.11.2 正式发布:向量数据库、安全增强、测试优化与多语言支持全面升级
数据库·安全
今天有个Bug3 小时前
【计算机毕业设计】流浪动物救助平台 - SpringBoot+Vue
sql·mysql·spring·vue·毕业设计·课程设计
码农学院3 小时前
Mysql 中的性能调优方法
数据库·mysql