Skip to content

Releases: plotly/plotly.py

v3.9.0

06 May 23:06
6a85e4b

Choose a tag to compare

[3.9.0] - 2019-04-19

Updated

Added

  • Added "magic underscore" support for specifying nested figure properties
    (#1534)
  • Added select_traces, for_each_trace, and update_traces figure
    methods for accessing and updating traces by subplot location and trace
    properties
    (#1534)
  • Added select_*, for_each_*, and update_* 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 the plotly, 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 specifying autocolorscale=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

19 Apr 14:00
8bcf6c8

Choose a tag to compare

[3.8.1] - 2019-04-19

Updated

Fixed

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

15 Apr 12:45
f4ed82a

Choose a tag to compare

[3.8.0] - 2019-04-15

Updated

Added

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

25 Mar 10:29
3471c3d

Choose a tag to compare

[3.7.1] - 2019-03-19

Fixed

  • Fixed .update on numbered axis objects for Python < 3.6 (#1462, #1464)

v3.7.0

08 Mar 15:01

Choose a tag to compare

[3.7.0] - 2019-03-08

Updated

Added

  • Added new auto_play argument to offline plot and iplot 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 using plotly.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 of FigureWidget 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

09 Feb 00:16
331c85f

Choose a tag to compare

[3.6.1] - 2019-02-08

Updated

Fixed

  • Crash on import when ipywidgets < 7 installed (#1425)
  • Made scipy an optional import for the ternary contour figure factory (#1423)
  • Eliminated use of deprecated numpy.asscalar function (#1428)

v3.6.0

01 Feb 23:02
256e2f4

Choose a tag to compare

[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 on scatterpolar, scatterpolargl, scatterternary, barpolar, choropleth, scattergeo, and scattermapbox 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 DataArrays) 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 legacy title* properties (#1403)
  • Fix deprecation warnings on Python 3.7 and ipywidgets > 7.0 (#1417). Special thanks to @Juanlu001 for this contribution!

v3.5.0

01 Feb 23:01
bcf4a2a

Choose a tag to compare

[3.5.0] - 2019-01-04

Updated

Changed

  • Plotly.js 1.43 converted title properties (e.g. layout.title) from
    strings into compound objects that contain the text as the text property
    along with new title placement attributes x, y, xref, yref, xanchor,
    yanchor and pad. Plotly.py 3.5.0 follows the new schema, but still
    supports specifying title as a string, in which case the string is assigned
    to the title.text property
    (#1302)
  • Plotly.js 1.43 also moved existing title* properties
    (e.g. layout.titlefont) under the title object (e.g. layout.title.font).
    Plotly.py 3.5.0 follows the new schema, but still
    supports the legacy title* properties by mapping them to the corresponding
    title.* property
    (#1302)
  • The update method on graph_objs now returns the updated object in order
    to support chaining multiple update operations together
    (#1379)
  • The show_link option has been set to False by default in the offline
    plot and iplot functions. Now that the "send data to cloud" button has
    been disabled by default in plotly.js 1.43.0, no buttons/links will be
    displayed by default that result in data being sent off of the local machine
    (#1304)
  • config options that are not known by plotly.py result in a warning but are
    still passed along to plotly.js. Prior to this change these unknown options
    were dropped silently
    (#1290)
  • Built-in themes now specify colorscales using the new global
    layout.colorscale properties. Previously the colorscales were defined for
    each trace type individually. This reduces the size of the resulting theme
    files
    (#1303)
  • Increased the maximum retry time of the orca integration from 8s to 30s
    (#1297)

Fixed

  • Fixed FigureWidget performance regression that, when working with
    large datasets, resulted in a slight freeze of the widget after user
    interactions (pan, zoom, etc)
    (1305)
  • Fix orca error when the ELECTRON_RUN_AS_NODE environment variable is set
    (#1293)
  • The 'responsive' config key was being silently blocked
    (#1290)
  • Fixed error when using unicode characters in string properties on Python 2
    (#1289)
  • Removed invalid calls to non-existent validate and strip_style Figure
    methods in matplotlylib conversion logic
    (#1128)

v3.4.2

23 Nov 16:26
618ee2d

Choose a tag to compare

[3.4.2] - 2018-11-23

Fixed

  • config options are now supported when using plotly.offline.iplot to
    display a figure in JupyterLab. Requires version 0.18.1 of the
    @jupyterlab/plotly-extension extension.
    (#1281, jupyterlab/jupyter-renderers#168)
  • Custom plotly_domain values are now supported in FigureWidget in both
    the classic notebook and JupyterLab (#1284)

v3.4.1

09 Nov 13:32
a8ae062

Choose a tag to compare

[3.4.1] - 2018-11-09

Updated

Fixed

  • Fixed histogram binning with pandas Series or numpy array
    (regression introduced in 3.4.0)
    (#1257,
    plotly/plotly.js#3211)
  • Fixed incorrect validation error on the args property of
    layout.updatemenu.Button() when value is a list that starts with a list
    (#1265)
  • Fixed deadlock causing plotly.io.write_image to hang on Windows after
    exporting more than ~25 images
    (#1255)
  • Fixed plot display error for scattergl trace with mode='lines' and
    more than 100k points
    (#1271)
  • Fixed responsive resizing error with iplot in the classic notebook
    (#1263)