开始使用免费开始使用

自定义发散调色板热力图

Seaborn 的 heatmap() 默认配色不会对取值 0 做特殊处理。若变量中 0 并不特殊,这没有问题;但当 0 代表中性值时,您就需要自定义调色板。

在本次可视化中,您希望将各城市与 2015 年 11 月 CO 的平均污染值进行比较。(相关数据已在 DataFrame nov_2015_CO 中提供。)

为此,请使用热力图来编码各城市当日 CO 污染值距离平均值的标准差数。您需要创建自定义的发散调色板并传给热力图函数,同时告知函数您的中性值是什么,以替换默认调色板。

本练习是课程的一部分

用 Python 提升数据可视化

查看课程

练习说明

  • 将发散调色板传入您的图表。

    • 注意,Seaborn 中的 sns.heatmap() 函数没有 palette 参数,而是需要使用 cmap 参数。
  • 通过指定 center 参数,为热力图添加中性值。

  • 将色条的上下边界设置为 -44,以使图例对称。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Define a custom palette
color_palette = sns.diverging_palette(250, 0, as_cmap = True)

# Pass palette to plot and set axis ranges
sns.heatmap(nov_2015_CO,
            ____ = ____,
            ____ = ____,
            vmin = ____,
            vmax = ____)
plt.yticks(rotation = 0)
plt.show()
编辑并运行代码