T. Carson T. Carson - 1 year ago 155
Python Question

Lines to separate groups in seaborn heatmap

I am plotting data as a Seaborn heatmap in Python. My data is intrinsically grouped into categories, and I'd like to have lines on the plot to indicate where the groups lie on the map. As a simple example, suppose I wanted to modify this plot from the documentation...

import seaborn as sns; sns.set()
flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
ax = sns.heatmap(flights, cbar=False)

enter image description here

Where I wanted to emphasize the comparisons between quarters of the year by making a plot like the one below; how would I do that?

enter image description here

Answer Source

You want ax.hlines:

ax.hlines([3, 6, 9], *ax.get_xlim())