# Seaborn 热力图

> 原文： [https://pythonbasics.org/seaborn_heatmap/](https://pythonbasics.org/seaborn_heatmap/)

热力图是矩形数据作为颜色编码矩阵的曲线图。 作为参数，它采用 2D 数据集。 该数据集可以被强制为一个 ndarray。

这是可视化数据的好方法，因为它可以显示包括时间在内的各种变量之间的关系。 例如，历年来的频率。



## 热力图示例

### 热力图

下面的热力图图基于 numpy 生成的随机值。 许多参数都是可能的，这只是显示了最基本的图。

```py
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

np.random.seed(0)
sns.set()
uniform_data = np.random.rand(10, 12)
ax = sns.heatmap(uniform_data, vmin=0, vmax=1)
plt.show()

```

![heatmap](img/7c1fd991881176a5622039e83abd17c8.jpg)

### 热力图颜色

下面的热力图颜色图再次使用了随机数据。 这次，它使用了不同的颜色图（cmap），带有“蓝色”调板，但仅是 bue 的颜色。 它还使用正方形块。

```py
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

df = pd.DataFrame(np.random.randn(50).reshape(10,5))
corr = df.corr()

ax1 = sns.heatmap(corr, cbar=0, linewidths=2,vmax=1, vmin=0, square=True, cmap='Blues')
plt.show()

```

![heatmap colors](img/fa730ce5ba742c146bfa8b3dac4a6a46.jpg)

### 热力图数据

热力图数据图类似，但是使用不同的调色板。 它使用 seaborn 中包含的航空公司或航班数据集。

```py
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

sns.set()
flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
ax = sns.heatmap(flights)
plt.title("Heatmap Flight Data")
plt.show()

```

![heatmap data](img/7506d8c32012e87ad7690628ef32dde1.jpg)