连续色彩调色板

用 Python 提升数据可视化

Nick Strayer

Instructor

左侧为连续数据类型列表,右侧为非连续

用 Python 提升数据可视化
blue_scale = sns.light_palette("steelblue")
sns.palplot(blue_scale)

白到蓝的调色板

red_scale = sns.dark_palette("orangered")
sns.palplot(red_scale)

黑到红的调色板

用 Python 提升数据可视化

左为颜色编码的热图,右为柱状图

用 Python 提升数据可视化

保持简单

indy_oct = pollution.query("year == 2015 & city == 'Indianapolis'")
blue_scale = sns.light_palette("steelblue", as_cmap = True)
sns.heatmap(indy_oct[['O3']], cmap = blue_scale)

浅蓝色热图,显示 O3 随时间变化

用 Python 提升数据可视化

保持简单

indy_oct = pollution.query("year == 2015 & city == 'Indianapolis'")
jet_scale = palette = sns.color_palette('jet', as_cmap = True)
sns.heatmap(indy_oct[['O3']], cmap = jet_scale)

使用彩虹 jet 调色板的 O3 热图

用 Python 提升数据可视化

注意色盲可读性

  • 避免绿色与红色之间的过渡
  • 使用亮度变化的调色板更安全

绿到红等于难过脸,浅红到红等于笑脸

用 Python 提升数据可视化

编码中性值

pal_light = sns.diverging_palette(250, 0)
pal_dark  = sns.diverging_palette(250, 0, center = 'dark')

蓝到红的发散调色板

用蓝到红发散调色板编码SO2偏差的热图

用 Python 提升数据可视化
plt.style.use('seaborn-white')

light_palette = sns.light_palette("orangered")
sns.scatterplot(x = 'CO', y = 'NO2', hue = 'O3', data = lb_2012, 
                palette = light_palette)

白色背景,橙色点;低值以更浅的点突出

用 Python 提升数据可视化
plt.style.use('dark_background')

dark_palette = sns.dark_palette("orangered")
sns.scatterplot(x = 'CO', y = 'NO2', hue = 'O3', data = lb_2012, 
                palette = dark_palette)

黑色背景,橙色点;低值以更深的点突出

用 Python 提升数据可视化

继续到练习

用 Python 提升数据可视化

Preparing Video For Download...