Releases: plotly/plotly.js
Releases · plotly/plotly.js
v3.2.0
v3.1.2
Added
- Add "SI extended" formatting rule for tick exponents on axis labels, allowing values to be displayed with extended SI prefixes (e.g., femto, pico, atto) [#7249], with thanks to @dberardi99 for the contribution!
Fixed
- Fix editable title.textforternary,polar,colorbar, andrangeslider(regression introduced in 3.0.0) [#7513], with thanks to @Lexachoc for the contribution!
- Fix layout.title.subtitledoes not properly clear/remove from the chart whensubtitleobject is not in place, orsubtitle.textset tonull, empty string, or whitespace-only values [#7571], with thanks to @cminn10 for the contribution!
- Fix issue where visibleproperty of one legend was affecting another [#7574]
- Resolve incorrect shape clipping for domain-referenced shapes on n*10th subplot [#7576]
- Update config diff check method to handle nested arrays [#7579]
v3.1.1
Fixed
- Update plot with all config changes during call to Plotly.react[#7475]
- Fix wheel event handler Violationin Chromium by settingpassive: true[#7517]
- Fix locationmodewarning to be less aggressive: show warning only whenlocationmodeis'country names'[#7520]
- Refactor drawMainTitleto use context-specific selections for title and subtitle, avoiding conflicts when multiple plots are present on the same page [#7522], with thanks to @davibarbosa2 for the contribution!
- Fix broken styling of map attributions [#7526]
- Calculate colorscale properly for histogram when marker cmin/cmax/cmidvalues are undefined [#7534]
- Tidy up some stray characters in attribute descriptions [#7539], [#7540]
- Fix some typos (and a conditional check) [#7542], with thanks to @musvaage for the contribution!
- Fix cropping of subunits in USA topojson, clean up land and coastlines layers for all topojson [#7555]
- Fix issue causing empty ScatterGL plots when using text elements #7563
Full Changelog: v3.1.0...v3.1.1
v3.1.0
Added
- Add property zerolinelayerto cartesian axes to allow drawing zeroline above traces [#7269]
- Add pattern.pathattribute as an alternative to the presetpattern.shapevalues, so you can use any SVG path string as a pattern fill. [#7280]
- Allow configuration of horizontal legend max height [#7359]
- Add modebardisableattribute to cartesian axes, to allow fine control over which buttons affect which axes [#7358]
- Add support for ticklabelposition "inside"/"outside" for category axes with ticksonset to "boundaries" [#7420],
 with thanks to @my-tien for the contribution!
- Add unifiedhovertitle.textto format unified hover titles [#7439]
- Add layout.hoverlabel.showarrow(andtrace.hoverlabel.showarrow) attribute to allow hiding the triangular caret that appears on the hover label box [#7451]
- Add minorloglabelsto cartesian axes [#7468]
- Make modebar keyboard-accessible via tabbing [#7492], with thanks to @davidangarita1 for the contribution!
Changed
- Switch to United Nations (coastlines, countries, land, ocean) + Natural Earth (lakes, rivers, subunits) geodata for building topojson used in geo plot [#7393]
- Make 'png' all caps [#7400]
- Refactor files related to UN topojson [#7481]
- Update default topojsonURLto point to new UN topojson [#7514]
- Add breaking change warning for country names locationmodeoption in choropleth, scattergeo plots [#7514]
Fixed
- Fix performance warning in scattergl traces, [#7390], with thanks to @MzyzzG for the contribution!
- Move css-loader and other dependencies into devDependencies section [#7407]
- Fix hidden ticklabels taking up plot space [#7417]
- Fix editable shapes (regression introduced in 2.34.0) [#7470], with thanks to @my-tien for the contribution!
- Update legend maxheight calculation logic [#7483]
- Fix hover event not triggered on consecutive empty bins (count=0) with hovermode:'x'for histogram [#7503], with thanks to @Lexachoc for the contribution!
- Remove form-data nested dependency associated with CVE-2025-7783 [#7514], with thanks to @KyleBoyer for the contribution!
v3.1.0-rc.1
Added
- Add modebardisable attribute to cartesian axes, to allow fine control over which buttons affect which axes [#7358]
- Add unifiedhovertitle.textto format unified hover titles [#7439]
- Add layout.hoverlabel.showarrow(andtrace.hoverlabel.showarrow) attribute to allow hiding the triangular caret that appears on the hover label box [#7451]
- Add minorloglabelsto cartesian axes [#7468]
- Make modebar keyboard-accessible via tabbing [#7492], with thanks to @davidangarita1 for the contribution!
Changed
- Refactor files related to UN topojson [#7481]
Fixed
v3.0.3
v3.0.2
v3.1.0-rc.0
Added
- Add property zerolinelayerto cartesian axes to allow drawing zeroline above traces [#7269]
- Add pattern.pathattribute as an alternative to the presetpattern.shapevalues, so you can use any SVG path string as a pattern fill. [#7280]
- Allow configuration of horizontal legend max height [#7359]
- Add support for ticklabelposition "inside"/"outside" for category axes with ticksonset to "boundaries" [#7420],
 with thanks to @my-tien for the contribution!
Changed
- Switch to United Nations (coastlines, countries, land, ocean) + Natural Earth (lakes, rivers, subunits) geodata for building topojson used in geo plot [#7393]
- Make 'png' all caps [#7400]
Fixed
- Fix installing dependencies in node v22 [#7381], with thanks to @chaigh-uk for the contribution!
- Fix performance warning in scattergl traces, [#7390], with thanks to @MzyzzG for the contribution!
- Move css-loader and other dependencies into devDependencies section [#7407]
- Fix Persian calendar leap year [#7456]
v3.0.1
v3.0.0
Removed
- Drop support for passing a string to the titleattribute, and drop support for deprecated attributestitlefont,titleposition,titleside, andtitleoffset(usetitle.text,title.font,title.side,title.offsetinstead)[#7212]
- Drop deprecated pointcloud and heatmapgl traces and gl2d subplots [#7213]
 Drop support for deprecatedbardirattribute (useorientationinstead) [#7214]
- Drop support for deprecated annotation.refattribute (useannotation.xrefandannotation.yrefinstead) [#7215]
- Drop support for deprecated error bar opacityattribute (use alpha channel of error barcolorattribute instead) [#7214]
- Drop support for deprecated attribute gl3d.cameraposition(usegl3d.camerainstead) [#7217]
- Drop deprecated plot3dPixelRatiofrom config [#7231]
- Drop deprecated zauto,zminandzmaxfrom the surface trace [#7234]
- Drop deprecated autotickattributes from cartesian axes [#7236]
- Drop transformsfrom the API [#7240, #7254]
- Drop jQuery events support [#7224]
- Drop the AMD support from the bundle header [#7229]
Changed
- Switch from webpack to esbuild for fast builds & testing as well as allowing modern JavaScript beyond es5 [#6909]
- Make offsetgroup work with barmode "stacked" and "relative" for bar traces [#7009]
- Node v18 required for development [#7116]
- Cleanup remaining code that was there to support the Internet Explorer [#7251]
- Deprecate mapbox traces and provide links to migration docs for plotly.js and plotly.py users [#7260]
Fixed
- Remove inline styles that break plots in strict CSP setups [#7109],
 with thanks to @martian111 for the contribution!
- Allow null or broken selection objects without throwing an error [#7164]
- Render scatterternary traces correctly if they have the idsattribute [#7164]
- Do not convert url-sourced layout images to data URI unless we're in staticPlot mode, to improve interactivity when images are changed with zoom/pan [#7199]
- Fix source map of the mablibre dependency [#7204]
- Fix years in license [#7205]
- Maintain layout images element identity based on coordinates,
 for smoother updates when you add or remove images early in the list. [#7277]
- Fix handling of new domain values given in the Plotly.react function to
 prevent loss of new domain values. [#7283]
- Fix distortions in sankey diagram links loops [#7272],
 with thanks to @giuseppe-straziota for the contribution!
- Performance improvement for scattergl traces with many points [#7301],
 with thanks to @giuseppe-straziota for the contribution!
- Set height and width on the .plotly-containerdiv to 100% to fix gl3d rendering in Dash Enterprise apps [#7313]