Seaborn绘制热力图的子图

Seaborn绘制热力图的子图

提示:如何绘制三张子图

绘制的时候,会出现如下问题

(1)如何绘制1*3的子图

(2)三个显示条,如何只显示最后一个


提示:下面就展示详细步骤

Seaborn绘制热力图的子图


前言


提示:以下是本篇文章正文内容,下面案例可供参考

一、seaborn是什么?

Seaborn是一个用于在Python中进行统计数据可视化的库。它是建立在Matplotlib之上的,可以轻松地创建各种各样的统计图表和信息可视化,以便更好地理解数据的分布、关系和趋势。

Seaborn提供了一系列的高级数据可视化功能,使得绘制各种统计图表变得更加简单。它具有以下特点:

  1. 美观的默认样式: Seaborn具有吸引人的默认绘图样式,这使得生成精美的图表变得更加容易。
  2. 内置的统计图表: Seaborn内置了许多常用的统计图表类型,如折线图、柱状图、箱线图、热力图、分布图等。
  3. 配色方案: Seaborn提供了各种各样的配色方案,可以让图表的颜色更加具有吸引力。
  4. 统计分析支持: Seaborn还可以与统计分析库(如pandas)集成,以更方便地可视化数据的分析结果。

使用Seaborn可以轻松地创建复杂的图表,而不需要过多的代码编写。它在数据科学、机器学习和数据分析领域广泛应用,帮助人们更好地理解数据并发现隐藏在数据中的模式和见解。

二、使用步骤

1. 方法一

直接设置cbar=False,如下代码会导致,第三张图和前两张图的尺寸不一致

c 复制代码
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

# 创建数据
data1 = np.random.rand(5, 5)
data2 = np.random.rand(5, 5)
data3 = np.random.rand(5, 5)

# 创建一个1x3的子图
fig, axes = plt.subplots(1, 3, figsize=(15, 5))

# 在每个子图中绘制热力图
sns.heatmap(data1, ax=axes[0], annot=True, cmap='YlGnBu', cbar=False)
sns.heatmap(data2, ax=axes[1], annot=True, cmap='YlGnBu', cbar=False)
sns.heatmap(data3, ax=axes[2], annot=True, cmap='YlGnBu', cbar=True)

# 添加子图标题
axes[0].set_title('Heatmap 1')
axes[1].set_title('Heatmap 2')
axes[2].set_title('Heatmap 3')

# 调整子图布局
plt.tight_layout()

# 显示图形
plt.show()

2.方法二

直接设置cbar_ax=axes[2].inset_axes([1.05, 0, 0.05, 1])就可以生成三个大小一致的图形,并且只显示最后一个指示条

c 复制代码
# 创建一个1行3列的子图布局
fig, axes = plt.subplots(1, 3, figsize=(15, 4.5))


# 绘制第一个子图热力图
heatmap1 = sns.heatmap(data1, cmap='Greens', ax=axes[0], cbar=False)
# axes[0].set_title('Heatmap 1')

# 绘制第二个子图热力图
heatmap2 = sns.heatmap(data2, cmap='Greens', ax=axes[1], cbar=False)
# axes[1].set_title('Heatmap 2')

# 绘制第三个子图热力图
heatmap3 = sns.heatmap(data3, cmap='Greens', ax=axes[2], cbar_ax=axes[2].inset_axes([1.05, 0, 0.05, 1]))
# axes[2].set_title('Heatmap 3')

# 显示图形
plt.tight_layout()
plt.savefig("./figure/{}.png".format("all_hot"), dpi=300)
plt.show()

总结

提示:子图绘制总结:

在这个示例中,我们首先导入所需的库,然后创建了一个1x3的子图布局。接下来,使用Seaborn的heatmap函数在每个子图中绘制热力图,并通过ax参数指定要绘制的子图。对于前两个子图,我们将cbar参数设置为False,以防止显示颜色指示条,而在最后一个子图中,我们将cbar参数设置为True,以显示颜色指示条。最后,我们通过设置子图标题和调整布局来美化图表,然后显示图形。

相关推荐
Cachel wood15 分钟前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架
終不似少年遊*21 分钟前
pyecharts
python·信息可视化·数据分析·学习笔记·pyecharts·使用技巧
Python之栈22 分钟前
【无标题】
数据库·python·mysql
袁袁袁袁满38 分钟前
100天精通Python(爬虫篇)——第113天:‌爬虫基础模块之urllib详细教程大全
开发语言·爬虫·python·网络爬虫·爬虫实战·urllib·urllib模块教程
老大白菜1 小时前
Python 爬虫技术指南
python
古希腊掌管学习的神2 小时前
[搜广推]王树森推荐系统——矩阵补充&最近邻查找
python·算法·机器学习·矩阵
LucianaiB3 小时前
探索CSDN博客数据:使用Python爬虫技术
开发语言·爬虫·python
PieroPc5 小时前
Python 写的 智慧记 进销存 辅助 程序 导入导出 excel 可打印
开发语言·python·excel
梧桐树04299 小时前
python常用内建模块:collections
python
Dream_Snowar9 小时前
速通Python 第三节
开发语言·python