All Versions
140
Latest Version
Avg Release Cycle
15 days
Latest Release
122 days ago

Changelog History
Page 2

  • v4.9.1

  • v4.9.0 Changes

    July 16, 2020

    โž• Added

    • Added image export support using Kaleido. The image export backend can be configured using the new engine argument to plotly.io.to_image and plotly.io.write_image. The engine argument may be set to "kaleido", "orca", or "auto". The default is engine="auto", in which case the Kaleido backend is enabled if the kaleido package from PyPI is installed, otherwise Orca is used. (#2613).
    • plotly.express.timeline() added as an official alternative to plotly.figure_factories.create_gantt() (#2626)
    • create_hexbin_mapbox() added to Figure Factories, with thanks to @RenaudLN for the impressive contribution!
    • facet_row_spacing and facet_col_spacing added to Plotly Express cartesian 2d functions (#2614)
    • base added to Plotly Express bar and bar_polar functions (#2626)
    • px.NO_COLOR constant to override wide-form color assignment in Plotly Express (#2614)

    ๐Ÿ›  Fixed

    • trendline traces are now of type scattergl when render_mode="webgl" in Plotly Express (#2614)
    • regression from 4.8.1 whereby "parent" was not accepted as part of path for px.sunburst() and px.treemap() (#2640)
    • create_dendrogram() figure factory now works correctly with scipy 1.5.1 (#2627)

    โšก๏ธ Updated

    • โšก๏ธ Updated Plotly.js to version 1.54.6. See the plotly.js CHANGELOG for more information.
    • โž• Added all cartesian-2d Plotly Express functions, plus imshow, to Pandas backend with kind option (#2541)
    • 0๏ธโƒฃ plotly.express.imshow now uses data frame index and columns names and values to populate axis parameters by default (#2539)
    • โšก๏ธ Javascript extensions are now build using Node 12, and have an updated package-lock.json with many fewer security warnings (#2636)
  • v4.8.2 Changes

    June 26, 2020

    โšก๏ธ Updated

    • โšก๏ธ Updated Plotly.js to version 1.54.5. See the plotly.js CHANGELOG for more information. This version includes various bug and security fixes.
    • add_traces() now accepts bare int-like values for rows/cols as well as lists thereof (#2546), with thanks to @MCBoarder289 for the contribution!

    ๐Ÿ›  Fixed

    • row/col now accept int-like values, not strictly int values (#2451), with thanks to @MCBoarder289 for the contribution!
    • ๐Ÿ›  Fixed special cases with px.sunburst and px.treemap with path input (#2524)
    • Fixed bug in hover_data argument of px functions, when the column name is changed with labels and hover_data is a dictionary setting up a specific format for the hover data (#2544).
    • Made the Plotly Express trendline argument more robust and made it work with datetime x values (#2554)
    • ๐Ÿ›  Fixed bug in px.sunburst and px.treemap: when the color and values arguments correspond to the same column, a different aggregation function has to be used for the two arguments (#2591)
    • Plotly Express wide mode now accepts mixed integer and float columns (#2598)
    • Plotly Express range_(x|y) should not impact the unlinked range of marginal subplots (#2600)
    • 0๏ธโƒฃ px.line now sets line_group=<variable> in wide mode by default (#2599)
    • โš  Corrected some regex warnings (#2577), with thanks to @georgevdd for the contribution!
  • v4.8.1 Changes

    May 28, 2020

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fixed the accidental removal of some functions and submodules from plotly.colors and plotly.express.colors
  • v4.8.0 Changes

    May 26, 2020

    ๐Ÿ“š Key new documentation pages:

    โž• Added

    • plotly now provides a Plotly Express-backed Pandas-compatible plotting backend, which can be activated via pandas.options.plotting.backend = "plotly". Note that it is not intended to implement every Pandas plotting function, nor is it intended to replicate the behaviour of every argument, although per the changes below, x and y should behave similarly. (#2336)
    • New datasets have been added to plotly.express.data: stocks, experiment, medals_wide and medals_long. (#2336)
    • plotly go.Figure and go.FigureWidget now have a _repr_html_ and a _repr_mimebundle_ method, which are standard hooks for integration in systems based on IPython. In particular, with _repr_html_ plotly figures can now be used within sphinx-gallery without any scraper. These additions should not change anything to the way plotly figures are displayed in notebook environments, since the _ipython_display_ method (already present in earlier versions) takes precedence over the new methods.

    โšก๏ธ Updated

    • The behaviour of the x, y, orientation, histfunc, violinmode, boxmode and stripmode arguments for 2d-cartesian functions in Plotly Express (i.e. scatter, line, area, bar, histogram, violin, box, strip, funnel, density_heatmap and density_contour) has been refined (#2336):
      • wide-form data support: if either x or y (but not both) may now be provided as a list of column references into data_frame or columns of data, in which case the imputed data frame will be treated as "wide" data and melt()ed internally before applying the usual mapping rules, with function-specific defaults.
      • if neither x nor y is provided but data_frame is, the data frame will be treated as "wide" with defaults depending on the value of orientation (and orientation has accordingly been added to scatter, line, density_heatmap, and density_contour for this purpose). Previously this would have resulted in an empty figure.
      • if x or y is missing, it is inferred to be the index of data_frame if data_frame provided, otherwise a stable index of integers starting at 0. In the case of px.bar, if the provided value is not continuous, the missing value is treated as a column of 1s named "count", so as to behave more like px.histogram and to avoid sizing the resulting bars differently based on their position in the column. Previously, missing values defaulted to integers starting at 0 per trace which made it potentially inconsistent or misleading.
      • if x (y) is missing, orientation now defaults to v (h). Previously it always defaulted to v but this is not considered a breaking change, as the cases in which it now defaults to h caused unreadable output if set to v.
      • if both x and y are provided and one of them does not contain continuous values, orientation defaults to the value perpendicular to that axis. Previously it always defaulted to v but this is not considered a breaking change, as the cases in which it now defaults to h caused unreadable output if set to v.
      • if both x and y are provided to histogram, and if x, y and z are provided to density_heatmap or density_contour, then histfunc now defaults to sum so as to avoid ignoring the provided data, and to cause histogram and bar to behave more similarly.
      • violinmode, boxmode and stripmode now default to overlay if x (y) in in v (h) orientation is also mapped to color, to avoid strange spacing issues with the previous default of group in all cases.
    • The Plotly Express arguments color_discrete_map, symbol_map and line_dash_map now accept the string "identity" which causes the corresponding input data to be used as-is rather than mapped into color_discrete_sequence, symbol_sequence or line_dash_sequence, respectively. (#2336)
    • Plotly Express now accepts px.Constant or px.Range objects in the place of column references so as to express constant or increasing integer values. (#2336)
  • v4.7.1 Changes

    May 08, 2020

    ๐Ÿ›  Fixed

    • Fix AttributeError: module 'plotly.graph_objs' has no attribute 'FigureWidget' exception on from plotly.graph_objs import * when ipywidgets is not installed. Error also occurred when importing plotly.figure_factor. It is now possible to import plotly.graph_objs.FigureWidget when ipywidgets is not installed, and an informative ImportError exception will be raised in the FigureWidget constructor (#2443, #1111).
    • Fix TypeError: unhashable type: 'Template' during Figure construction when plotly.io.templates.default is set to a Template object rather than a string.
  • v4.7.0 Changes

    May 06, 2020

    โšก๏ธ Updated

    • โšก๏ธ Updated Plotly.js to version 1.54.1. See the plotly.js CHANGELOG for more information. The main new feature of this version of Plotly.js is the possibility to draw layout shapes, using custom dragmodes and corresponding modebar buttons.
    • โšก๏ธ The sphinx-gallery scraper has been updated to work with different structures of galleries #2149

    โž• Added

    • The hover_data parameter of px functions can now be a dictionary. This makes it possible to skip hover information for some arguments or to change the formatting of hover information #2377.
    • ๐Ÿ— It's now possible to build a development version of Plotly.py against the build artifacts from a non-master branch of Plotly.js, which makes for faster QA and development cycles #2349. Thanks @zouhairm for this Pull Request!

    ๐Ÿ›  Fixed

    • Plotly Express trendlines now handle missing data correctly #2357

    ๐ŸŽ Performance

    ๐ŸŽ This version includes several performance improvements (#2368, #2403).

    • Child graph objects (e.g. figure.layout.xaxis) are no longer created eagerly during graph object construction. Instead, they are created lazily the first time the property is accessed.
    • Property validation is now disabled for select internal operations.
    • When used with Python 3.7 and above, plotly.py now takes advantage of PEP-562 to perform submodule imports lazily. This dramatically improves import times.
  • v4.6 Changes

    March 31, 2020

    โšก๏ธ Updated

    • Updated Plotly.js to version 1.53.0. See the plotly.js CHANGELOG for more information on the numerous new features and bug fixes of this release. The main features of the Plotly.js release are
      • Introduce range breaks on date axes (for example, to remove week-ends) via layout.xaxis.rangebreaks
      • Introduce a new unified x (or y) hovermode (layout.hovermode="x unified"), in which the hover box shows the information for all traces at a given x (or y) position
      • Add node.customdata and link.customdata to sankey traces
      • โšก๏ธ Updated contributing notes for more explanations on how to contribute to plotly.py #2290. Please give feedback on these notes!
      • ๐Ÿ“š Updated documentation examples #2325, and to show how to color links in Sankey diagrams #2291.
      • ๐Ÿ“š Special thanks to @SylwiaOliwia2 and @dangercrow for improving our documentation!

    โž• Added

    • ๐Ÿ“‡ px.imshow now accepts xarray inputs, with metadata being used for axis labels, hover and colorbar #2166

    ๐Ÿ›  Fixed

    • Fixed handling of opacity in px.pie, px.funnel_area, px.density_mapbox, px.funnel #2317, with thanks to @tvaucher for the contribution!
  • v4.5.4 Changes

    March 11, 2020

    โšก๏ธ Updated

    ๐Ÿ›  Fixed

    • Jupyterlab extension now compatible with both Jupyterlab 1.2 and 2.0 #2261 with thanks to @consideRatio for the contribution!
    • ๐Ÿ›  Fixed a bug when using boolean values for the color argument of px functions #2127
    • Corrected import bug which was occuring with old versions of ipywidgets #2265
    • ๐Ÿ›  Fixed python 3.8 syntax warning #2262, with thanks to @sgn for the contribution!
  • v4.5.3 Changes

    March 05, 2020

    โšก๏ธ Updated

    • โœ‚ Removed development dependency on nose testing framework #2217

    ๐Ÿ›  Fixed

    • JupyterLab extension now compatible with JupyterLab 2.0 #2245 with thanks to @consideRatio for the contribution!