v0.8.0 (July 2017)#
The default style is no longer applied when seaborn is imported. It is now necessary to explicitly call
set()
or one or more ofset_style()
,set_context()
, andset_palette()
. Correspondingly, theseaborn.apionly
module has been deprecated.Changed the behavior of
heatmap()
(and by extensionclustermap()
) when plotting divergent dataesets (i.e. when thecenter
parameter is used). Instead of extending the lower and upper limits of the colormap to be symmetrical around thecenter
value, the colormap is modified so that its middle color corresponds tocenter
. This means that the full range of the colormap will not be used (unless the data or specifiedvmin
andvmax
are symmetric), but the upper and lower limits of the colorbar will correspond to the range of the data. See the Github pull request (#1184) for examples of the behavior.Removed automatic detection of diverging data in
heatmap()
(and by extensionclustermap()
). If you want the colormap to be treated as diverging (see above), it is now necessary to specify thecenter
value. When no colormap is specified, specifyingcenter
will still change the default to be one that is more appropriate for displaying diverging data.Added four new colormaps, created using viscm for perceptual uniformity. The new colormaps include two sequential colormaps (“rocket” and “mako”) and two diverging colormaps (“icefire” and “vlag”). These colormaps are registered with matplotlib on seaborn import and the colormap objects can be accessed in the
seaborn.cm
namespace.Changed the default
heatmap()
colormaps to be “rocket” (in the case of sequential data) or “icefire” (in the case of diverging data). Note that this change reverses the direction of the luminance ramp from the previous defaults. While potentially confusing and disruptive, this change better aligns the seaborn defaults with the new matplotlib default colormap (“viridis”) and arguably better aligns the semantics of a “heat” map with the appearance of the colormap.Added
"auto"
as a (default) option for tick labels inheatmap()
andclustermap()
. This will try to estimate how many ticks can be labeled without the text objects overlapping, which should improve performance for larger matrices.Added the
dodge
parameter toboxplot()
,violinplot()
, andbarplot()
to allow use ofhue
without changing the position or width of the plot elements, as when thehue
variable is not nested within the main categorical variable.Correspondingly, the
split
parameter forstripplot()
andswarmplot()
has been renamed tododge
for consistency with the other categorical functions (and for differentiation from the meaning ofsplit
inviolinplot()
).Added the ability to draw a colorbar for a bivariate
kdeplot()
with thecbar
parameter (and relatedcbar_ax
andcbar_kws
parameters).Added the ability to use error bars to show standard deviations rather than bootstrap confidence intervals in most statistical functions by putting
ci="sd"
.Allow side-specific offsets in
despine()
.Figure size is no longer part of the seaborn plotting context parameters.
Put a cap on the number of bins used in
jointplot()
fortype=="hex"
to avoid hanging when the reference rule prescribes too many.Changed the y axis in
heatmap()
. Instead of reversing the rows of the data internally, the y axis is now inverted. This may affect code that draws on top of the heatmap in data coordinates.Turn off dendrogram axes in
clustermap()
rather than setting the background color to white.New matplotlib qualitative palettes (e.g. “tab10”) are now handled correctly.
Some modules and functions have been internally reorganized; there should be no effect on code that uses the
seaborn
namespace.Added a deprecation warning to
tsplot
function to indicate that it will be removed or replaced with a substantially altered version in a future release.The
interactplot
andcoefplot
functions are officially deprecated and will be removed in a future release.