开始使用免费开始使用

重混一幅图

您发现农贸市场的纬度与市场开放月份数之间的关系非常有趣。直觉上,越往南,生长期越长,因此市场也能开放更久。为展示这个现象,您将市场数据汇总到州级,并绘制热力图,列对应市场开放的时长。热力图中的每一行展示某个州的市场"季节"分布,行按照该州纬度从高到低排序。

heatmap

默认的热力图还有很多可改进之处。请减小字体大小,使每个州名都能不重叠地显示。深色调色板与浅色背景也不协调,且色条对读者帮助不大,因为这里的重点是相对比较。

本练习是课程的一部分

用 Python 提升数据可视化

查看课程

练习说明

  • 将字体大小减少到默认值的 85%,以避免州名过于拥挤。
  • 创建一个从 'white''steelblue' 的新调色板。
  • 使用新创建的调色板替换默认调色板。
  • 移除热力图旁绘制的连续色条图例。

交互式实操练习

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

# Decrease font size so state names are less crowded
sns.set(____ = ____)

# Switch to an appropriate color palette
blue_pal = sns.light_palette("____", as_cmap = True)

# Order states by latitude
g = sns.heatmap(markets_by_month.reindex(state_by_lat), 
            # Add gaps between cells
            linewidths = 0.1, 
            # Set new palette and remove color bar 
            cmap = ____, cbar = ____,
            yticklabels = True)

# Rotate y-axis ticks 
g.set_yticklabels(g.get_yticklabels(), rotation = 0)
plt.title('Distribution of months open for farmers markets by latitude')
plt.show()
编辑并运行代码