sns.heatmap颜色
时间: 2025-05-09 18:13:13 浏览: 30
### seaborn heatmap 颜色设置方法
`seaborn.heatmap()` 函数提供了多种方式来自定义颜色方案,主要通过 `cmap` 参数实现。以下是关于如何配置和调整热图颜色的具体说明:
#### 1. 使用预定义的颜色映射 (Colormap)
Python 的 Matplotlib 库内置了许多预定义的颜色映射表,可以直接传递给 `cmap` 参数使用。例如:
```python
import seaborn as sns
import matplotlib.pyplot as plt
# 加载示例数据集
flights = sns.load_dataset("flights")
pivot_data = flights.pivot("month", "year", "passengers")
# 绘制热图并指定 cmap
sns.heatmap(pivot_data, cmap="coolwarm") # 使用 coolwarm 色彩映射
plt.show()
```
上述代码片段展示了如何利用 `"coolwarm"` 这一预设色彩映射来绘制热图[^1]。
#### 2. 自定义离散颜色映射
如果需要更精细地控制颜色变化,可以创建自定义的离散颜色映射。这可以通过 `ListedColormap` 实现:
```python
from matplotlib.colors import ListedColormap
colors = ["white", "blue", "red"] # 定义颜色列表
custom_cmap = ListedColormap(colors)
sns.heatmap(pivot_data, cmap=custom_cmap) # 使用自定义 colormap
plt.show()
```
此部分允许开发者完全掌控每一段数值范围对应的颜色[^2]。
#### 3. 设置线条颜色与宽度
除了背景格子的颜色外,还可以更改网格线的颜色以及其粗细程度。例如:
```python
sns.heatmap(pivot_data, linecolor='black', linewidths=0.5) # 黑色线条分隔单元格
plt.show()
```
这里设置了黑色作为分割线的颜色,并且指定了较窄的线宽[^3]。
#### 4. 反转颜色顺序
有时可能希望颠倒默认或者选定 colormaps 中的颜色排列方向,则只需简单添加 `_r` 后缀即可完成反转操作:
```python
sns.heatmap(pivot_data, cmap="viridis_r") # viridis colormap 倒序应用
plt.show()
```
以上就是针对 seaborn 热力图颜色设定的一些常用技巧总结。
阅读全文
相关推荐



















