Releases: plotly/plotly.py
Releases · plotly/plotly.py
v4.1.0
Updated
- Updated Plotly.js to version 1.49.1. See the plotly.js CHANGELOG for more information.
- Bars in the figures produced by the
create_gantt
figure factory may now be hidden by clicking on the legend (#1665). Special thanks to @csabaszan for this contribution! - Improved performance when serializing figures containing large numpy arrays (#1690). Special thanks to @miriad for this contribution!
Added
- Added new renderers for displaying figures from within the Databricks and CoCalc notebook services (#1703)
- Added
indicator
traces (plotly/plotly.js#3978) - Added
choroplethmapbox
traces (plotly/plotly.js#3988) - Added
densitymapbox
traces (plotly/plotly.js#3993) - Added new mapbox
style
values:open-street-map
,carto-positron
,carto-darkmatter
,
stamen-terrain
,stamen-toner
,stamen-watercolor
andwhite-bg
that do not require a Mapbox access token (plotly/plotly.js#3987, plotly/plotly.js#4068) - Added support for
sourcetype
valueraster
andimage
andtype
raster
for mapbox layout layers (plotly/plotly.js#4006) - Added
below
attribute toscattermapbox
traces (plotly/plotly.js#4058) - Added support for
below: 'traces'
in mapbox layout layers (plotly/plotly.js#4058) - Added
sourceattribution
attribute to mapbox layout layers (plotly/plotly.js#4069) - Added
labelangle
andlabelside
attributes toparcoords
traces (plotly/plotly.js#3966) - Added
doubleClickDelay
config option (plotly/plotly.js#3991) - Added
showEditInChartStudio
config option (plotly/plotly.js#4061)
Fixed
- Fixed incorrect facet row ordering in figures generated by plotly.express functions (plotly/plotly_express#129)
- Fixed "The truth value of an array with more than one element is ambiguous" error when specifying subplot titles as numpy array of strings (#1685). Special thanks to @MrQubo for this contribution!
- The
line_3d
plotly express function was not visible by default when importing*
fromplotly.express
(#1667)
v4.0.0
[4.0.0] - 2019-07-16
This is a major release that includes many new features, and a few breaking changes. See the version 4 announcement for a summary of the important changes.
Updated
- Updated Plotly.js to version 1.48.3. See the plotly.js CHANGELOG for more information.
Added
- The Plotly Express tech preview (https://medium.com/@plotlygraphs/introducing-plotly-express-808df010143d) has been integrated as the
plotly.express
module (#1613) - Added a new renderers framework the supports rendering figure in a wide variety of contexts (#1474). See the new Displaying Plotly Figures documentation page for more information.
- Added
plotly.io.write_html
andplotly.io.to_html
functions for exporting figures to HTML (1474). Also available as.write_html
and.to_html
figure methods. - Added new figure methods for batch updating figure properties (
update_layout
,update_traces
,update_xaxes
, etc.) (#1624). See the new Creating and Updating Figures documentation page for more details. - Added support for all trace types in
make_subplots
(#1528) - Added support for secondary y-axes in
make_subplots
(#1564) - Support passing a scalar trace object (rather than a list or tuple of trace objects) as the
data
property to theFigure
constructor (#1614) - Added dictionary-stule
.pop
method to graph object classes (#1614) - New
jupyterlab-plotly
JupyterLab extension for rendering figures in JupyterLab. Replaces the@jupyterlab/plotly-extension
extension, and includes JupyterLab 1.0 support. - Added new suite of built-in colorscales to the
plotly.colors
module, and support for specifying this wide range of colorscales by name. Also added support for specifying colorscales as a list of colors, in which case the color spacing is assumed to be uniform (#1647). - Added
sphinx-gallery
renderer for embedding plotly figures in Sphinx-Gallery (#1577, plotly/plotly-sphinx-gallery).
Removed
- The follow modules for interfacing with the Chart Studio cloud service have been removed from plotly.py and moved to the new
chart-studio
distribution package. The following modules have been moved to a new top-levelchart_studio
module:plotly.plotly
->chart_studio.plotly
plotly.api
->chart_studio.api
plotly.dashboard_objs
->chart_studio.dashboard_objs
plotly.grid_objs
->chart_studio.grid_objs
plotly.presentation_objs
->chart_studio.presentation_objs
- The legacy
plotly.widgets.GraphWidget
class for displaying online figures hosted by Chart Studio as ipywidgets has been removed. Please use the offline, and much more capable,plotly.graph_objects.FigureWidget
class instead. - The
fileopt
argument tochart_studio.plotly.plot
has been removed, so in-place modifications to previously published figures are no longer supported, and a figure will always overwrite a figure with the same name.
Changed
- The
'plotly'
template is used as the default theme across all figures. - In order to reduce the size of the core
plotly
distribution package, the bundled geographic shape files used by thecreate_choropleth
figure factory have been moved to a new optionalplotly-geo
distribution package (1604) - For consistency with other figure factories, the
create_choropleth
andcreate_gantt
figure factories now always returnsFigure
objects, rather than dictionaries (#1600, #1607). - Figure add trace methods (
.add_trace
,.add_traces
,.add_scatter
, etc.) now return a reference to the calling figure, rather than the newly created trace (#1624) plotly.tools.make_subplots
has been moved toplotly.subplots.make_subplots
, though it is still available at the previous location for backward compatibility- The
plotly.graph_objs
module has been moved toplotly.graph_objects
, though it is still available at the previous location for backward compatibility (#1614) - Trace
uid
properties are only generated automatically when a trace is added to aFigureWidget
. When a trace is added to a standardFigure
graph object the inputuid
, if provided, is accepted as is (#1580). datetime
objects that include timezones are not longer converted to UTC (#1581)- When a tuple property (e.g.
layout.annotations
) is updated with a list/tuple that is longer than the current value, the extra elements are appended to the end of the tuple.
Fixed
- Fixed visibility of
bar
trace error bars in built-in templates (1656)
v3.10.0
[3.10.0] - 2019-05-31
Updated
- Updated Plotly.js to version 1.48.1. See the plotly.js CHANGELOG for more information.
Added
- Added funnel trace (plotly/plotly.js#3817, plotly/plotly.js#3911)
- Added funnelarea traces (#3876, #3912)
- Added support for shared color axes via coloraxis attributes in the layout (#3803, #3786, #3901, #3916)
- Added support for sorting categorical cartesian axes by value (#3864)
- Added
bingroup
tohistogram
,histogram2d
andhistogram2dcontour
to group traces to have compatible auto-bin values (#3845) - Add legend
itemclick
anditemdoubleclick
attributes to set or disable the legend item click and double-click behavior (#3862) - Added support for calling orca through Xvfb to support static image export on Linux when X11 is not available (#1523).
Fixed
- Fixed
PlotlyJSONEncoder
encoding error whensimplejson
is installed (#1556, #1561) - HTML export now honors the figure height specified in the figure template (#1560)
- Fixed display height of figure displayed in JupyterLab (#1572,
#1571) - Fixed honouring of the
validate=False
option for all renderer types (#1576)
v3.9.0
[3.9.0] - 2019-04-19
Updated
- Updated Plotly.js to version 1.47.4. See the
plotly.js CHANGELOG
for more information.
Added
- Added "magic underscore" support for specifying nested figure properties
(#1534) - Added
select_traces
,for_each_trace
, andupdate_traces
figure
methods for accessing and updating traces by subplot location and trace
properties
(#1534) - Added
select_*
,for_each_*
, andupdate_*
figure methods for
accessing and updating subplot objects (xaxis
,scene
,polar
, etc)
(#1548) - Added support for Dash Design Kit style color specifications
(#1541). Thanks to
@wbrgss for this contribution! - Added support for the
plotly_unselect
plotly.js event in a new
on_unselect
trace method
(#1542). Thanks to
@denphi for this contribution!
Changed
- Changed the default colorscale to be
plasma
for theplotly
,plotly_white
, and
plotly_dark
templates for plotly.py version 4
(#1274,
#1549) - Reordered the default colorway for the
plotly
,plotly_white
, and
plotly_dark
templates for plotly.py version 4
(#1549)
Fixed
- Fixed package listing in setup.py
(#1543). Thanks to
@jakevdp for this contribution! - Fixed built-in templates so that
heatmap
colorscales can be overridden
without specifyingautocolorscale=False
(#1454,
#1549) - Fix
UnboundLocalError
error in the presence of a missing or corrupt
~/.plotly/.config
file
(#1551) - Fixed error when combining
sankey
traces with cartesian subplots
(#1527,
plotly/plotly.js#3802)
v3.8.1
[3.8.1] - 2019-04-19
Updated
- Updated Plotly.js to version 1.47.3. See the plotly.js CHANGELOG for more information.
Fixed
- Fix MathJax rendering in Firefox (plotly/plotly.js#3783)
- Fix vertical responsive resizing in exported HTML files (#1524, 1525)
Changed
- Reverted change to
layout.legend.itemsizing = 'constant'
in built-in templates
that was made in 3.8.0. This resulted in unexpectedly large legend entries in
some common cases (#1526)
v3.8.0
[3.8.0] - 2019-04-15
Updated
- Updated Plotly.js to version 1.47.1. See the
plotly.js CHANGELOG
for more information.
Added
- Three new trace types:
sunburst
(plotly/plotly.js#3594),waterfall
(plotly/plotly.js#3531), andvolume
(plotly/plotly.js#3488). - New
plotly.io.to_html
andplotly.io.write_html
functions to export figures as html (#1474). - Added
animation_opts
argument toplotly.offline.plot
andplotly.offline.iplot
to control the auto-play animation settings (#1503). Special thanks to @TakodaS for this contribution!
Fixed
- Fix race condition when checking the permissions of the
.plotly
settings directory (#1498). Special thanks to @pb-cdunn for this contribution! - Fix
OSError
when processing time series data using Python 3.7+ (#1402, #1501)
Updated
- Align hoverlabels left and set legend items to constant-size in builtin themes (#1520)
v3.7.1
v3.7.0
[3.7.0] - 2019-03-08
Updated
- Updated Plotly.js to version 1.45.2. See the
plotly.js CHANGELOG
for more information.
Added
- Added new
auto_play
argument to offlineplot
andiplot
to control
whether figures with frames are automatically animated when the figure is
loaded
(#1447) - Added support for uploading "offline" animations (those with inline data
arrays rather than grid references) to Chart Studio usingplotly.plotly.create_animations
(#1432)
Updated
- Updated implementation of the
ternary_contour
figure factory that was
added in 3.6.0. The new implementation uses the native plotly.js ternary axes
and provides ILR transform support.
(#1418)
Fixed
- Make sure the trace
selectedpoints
property ofFigureWidget
traces is
updated on the Python side in response to plotly.js selection events
(#1433) - Fix validation for 0-dimensional numpy arrays
(#1444). Special thanks to
@ankokumoyashi for this contribution!
v3.6.1
[3.6.1] - 2019-02-08
Updated
- Updated Plotly.js to version 1.44.3. See the plotly.js CHANGELOG for more information.
Fixed
v3.6.0
[3.6.0] - 2019-02-01
Updated
- Updated Plotly.js to version 1.44.1. Select highlights included below.
See the plotly.js CHANGELOG for more information.
Added
- Add isosurface gl3d trace type (plotly/plotly.js#3438)
- Preview of ternary contour figure factory (#1413). Special thanks to @emmanuelle for this contribution!
- Add support for
line.color
colorbars for scatter3d traces (#1085, plotly/plotly.js#3384) - Add support for
hovertemplate
onscatterpolar
,scatterpolargl
,scatterternary
,barpolar
,choropleth
,scattergeo
, andscattermapbox
trace (plotly/plotly.js#3398, plotly/plotly.js#3436) - Add width attribute to box and violin traces (plotly/plotly.js#3234)
- Add support for
<sup>
,<sup>
,<b>
,<i>
and<em>
pseudo-html tags in extra (aka trace "name") hover labels (plotly/plotly.js#3443) - Add 4 additional colors to the colorway cycle of the plotly themes (#1408)
- Automatically coerce array-like objects (e.g. xarray
DataArray
s) to numpy arrays (#1393). Special thanks to @malmaud for this contribution!
Fixed
- Fix annotated heatmap text color when values are specified as a nested list (#1300)
- Fix
update
method with legacytitle*
properties (#1403) - Fix deprecation warnings on Python 3.7 and ipywidgets > 7.0 (#1417). Special thanks to @Juanlu001 for this contribution!