Skip to content

Releases: plotly/plotly.py

v4.5.2

25 Feb 05:11
Compare
Choose a tag to compare

Fixed

  • Fix build errors in JupyterLab extension by pinning version of @types/plotly.js #2223

v4.5.1

19 Feb 21:53
Compare
Choose a tag to compare

Updated

  • Updated Plotly.js to version 1.52.2. See the plotly.js CHANGELOG for more information on bug fixes.

Fixed

  • update_annotations, update_shapes and update_layout_images now no longer require the patch argument, as per the docstring #2167
  • px.defaults no longer accepts arbitrary keys #2168
  • better error message when pandas is not installed #2125
  • support columns of numerical type in path argument of px.sunburst/px.treemap and add values of color column in hoverlabel for px.sunburst/px.treemap #2133

v4.5.0

22 Jan 20:11
Compare
Choose a tag to compare

[4.5.0] - 2020-01-22

Updated

  • Updated Plotly.js to version 1.52.1. See the plotly.js CHANGELOG for more information on numerous new attribute and bug fixes.
  • Plotly Express uses the new legend.title attribute and so now has shorter trace names #2051
  • The heuristic used by px.parallel_categories to determine which columns of the data frame to draw has been changed and made more configurable with the dimensions_max_cardinality argument #2102
  • The simple_white colorbar styling has been streamlined #2110
  • The jupyterlab-plotly and plotlywidget JupyterLab extensions should now share code when installed together, resulting in smaller JupyterLab vendor bundle sizes #2103

Fixed

  • Plotly Express category_orders are now respected independent of the contents of the data set #2084
  • go.Scattergl symbols now accept numeric specification #1928
  • px.scatter trendline coefficients are now more readable #1984
  • Built-in cyclical color scales now all have identical start and end points #2016

Added

  • px.sunburst and px.treemap now accept a path argument for passing
    columns of a rectangular dataframe to build the charts #2006
  • px.choropleth now accepts a user-supplied geojson attribute #2057
  • px.choropleth and px.choropleth_mapbox now accept featureidkey to specify the GeoJSON field to use to match locations #2057
  • px.choropleth and px.choropleth_mapbox now accept discrete color #2057
  • px.bar_polar now accepts continuous color #2017
  • New layout.uniformtext attribute allows for automatic standardization of font sizes across bar-like and hierarchical traces. See the plotly.js CHANGELOG for more information

v4.4.1

10 Dec 16:55
6fb1052
Compare
Choose a tag to compare

[4.4.1] - 2019-12-10

Fixed

  • Fixed improper JSON encoding exception when the pillow module not installed #1993

v4.4.0

10 Dec 14:40
c399e06
Compare
Choose a tag to compare

[4.4.0] - 2019-12-10

Added

  • Extended the plotly.express functional API with 7 new functions: px.pie,
    px.sunburst, px.treemap, px.funnel, and px.funnel_area (#1909) px.density_mapbox and
    px.choropleth_mapbox #1937.
  • plotly.express mapbox functions in plotly.express have new arguments center and mapbox_style #1937.
  • plotly.express polar plots (scatter_polar, line_polar, bar_polar) now
    have a range_theta keyword argument for representing only an angular
    section #1969.
  • All continuous colorscales now accept a _r suffix that reverses their direction #1933
  • Docstrings of plotly.py are now doctested #1921.

Updated

  • Updated Plotly.js to version 1.51.2. See the
    plotly.js CHANGELOG
    for more information
  • The tutorials of the plotly.py documentation are
    now in the main plotly.py Github repository. Contributions in order to improve or extend the documentation are very welcome!
  • plotly.express generated plots no longer have a default height of 600 pixels, instead they inherit the default height of regular figures #1990. To restore the old behavior, set px.defaults.height=600 once per session, or set the height keyword arguement to any px.function() to 600.

Fixed

  • Fixed a plotly.express input bug when using data frame indices#1934
  • Fixed how to display facet labels with plotly express #1966
  • Fixed a bug to use correctly the zmin/zmax parameter in px.imshow for single-channel images #1981
  • Clipped docstring width for better display in Jupyterlab #1939. Thank you @joelostblom!
  • Fixed a bug in the case of external orca server #1915 thank you @dev-dsp!

v4.3.0

12 Nov 11:11
c0a0ee0
Compare
Choose a tag to compare

[4.3.0] - 2019-11-11

Updated

  • Updated Plotly.js to version 1.51.1. See the
    plotly.js CHANGELOG
    for more information
  • Improved propagation of empty templates (#1892)
  • Update the add_annotations/add_shapes/add_images methods to no longer default to adding objects in paper coordinates. This allows plotly.js to determine the default reference frame based on context (#1888)
  • Use the default template's background color for displaying color swatches (#1872). Special thanks to @joelostblom for this contribution!
  • Improved docstrings (#1835, #1837)

Added

  • Added image trace type (plotly.js#4289, plotly.js#4307, plotly.js#4313, plotly.js#4319)
  • Added matplotlib-style plotly.express.imshow convenience function to display images and heatmaps (#1855, #1885)
  • Added matplotlib-style simple_white template (#1864). Special thanks to @joelostblom for this contribution.
  • Added support for using an externally managed orca server for image export features (#1850). Special thanks to @miriad for this contribution.
  • Added facet wrapping support to plotly express functions using the new facet_col_wrap argument (#1838)

v4.2.1

18 Oct 21:59
Compare
Choose a tag to compare

[4.2.1] - 2019-10-18

Fixed

  • Fixed regression in 4.2.0 that caused all figure factories to require that scikit-image be installed (#1832)

v4.2.0

16 Oct 22:51
b7ad543
Compare
Choose a tag to compare

[4.2.0] - 2019-10-16

Updated

Added

Fixed

  • Fixed iframe renderer on Python 2 (#1822)
  • Fixed use of merged templates in plotly.express (#1819)

v4.1.0

07 Aug 00:47
317643d
Compare
Choose a tag to compare

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

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 * from plotly.express (#1667)

v4.0.0

17 Jul 21:59
65625d4
Compare
Choose a tag to compare

[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

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 and plotly.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 the Figure 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-level chart_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 to chart_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 the create_choropleth figure factory have been moved to a new optional plotly-geo distribution package (1604)
  • For consistency with other figure factories, the create_choropleth and create_gantt figure factories now always returns Figure 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 to plotly.subplots.make_subplots, though it is still available at the previous location for backward compatibility
  • The plotly.graph_objs module has been moved to plotly.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 a FigureWidget. When a trace is added to a standard Figure graph object the input uid, 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)