Skip to content

Releases: plotly/plotly.js

v1.37.0

01 May 22:42
Compare
Choose a tag to compare

Added

  • Add plotly_legendclick and plotly_legenddoubleclick events [#2581]
  • Add Swahili (sw) locale [#2526]

Changed

  • Improve cartesian trace update and removal by using more d3-iomatic patterns.
    This results in some performance improvements during redraws [#2574]
  • Our internal Lib.nestedProperty no longer prunes empty containers in
    gd.data, gd.layout, gd._fullData and gd._fulllayout.
    We made this change to clean up some of the Plotly.react internals.
    This also lead to a slight performance boost [#2577]

Fixed

  • Fix Plotly.react's handling of transformed traces [#2577]
  • Fix Safari support for scattergl and splom traces [#2593]
  • Fix scattergl point clustering edge cases [#2593]
  • Fix scattergl selection after double-click on graphs
    with more than 1e5 points [#2593]
  • Fix artificial number of lines limit in scattergl traces [#2568]
  • Fix typed array support in color array in scattergl traces [#2596]
  • Fix typed array support for splom traces [#2596]
  • Make scatter and scattercarpet coexist on same subplot [#2574]
  • Fix incorrect fallback border color for axis common hover labels [#2557]
  • Fix handling of blank editable legend items [#2587]
  • Fix spikelines positioning in Firefox [#2590]
  • Fix Plotly.react modebar updates when the locale changes [#2592]
  • Fix scatter selection performance regression (dating back to 1.32.0) [#2583]
  • Fix plotly_beforeplot and plotly_beforehover event handlers when attached
    with gd.once [#2581]

v1.36.1

18 Apr 17:42
Compare
Choose a tag to compare

Fixed

  • Fix scattergl hover in dist and CDN bundles
    (due to browser-pack-flat discrepancy introduced in 1.36.0)
    by removing browser-pack-flat from our bundling pipeline [#2572]

v1.36.0

17 Apr 18:34
Compare
Choose a tag to compare

Added

  • Add splom (aka scatter plot matrix) traces [#2505]
  • Add multi-selection and click-to-select on parcoords axes [#2415]
  • Add selection and improve legend items for ohlc and candlestick [#2561]
  • Add 'fixed size' layout shapes through new shape attributes
    xsizemode, ysizemode, xanchor and yanchor [#2532]
  • Add layout attribute selectdirection to restrict select-box direction [#2506]
  • Add support for selections on graphs with range sliders [#2561]
  • Add support for ragged table inputs [#2511]
  • Add Czech (cs) locale [#2483]
  • Add Japanese (ja) locale [#2558]

Changed

  • Multiple performance improvements for cartesian subplots, most noticeable
    on graphs with many cartesian subplots [#2474, #2487, #2527]
  • Use new gl-mesh3d version that attempts to make lighting results less
    hardware-dependent [#2365]
  • New and improved point-clustering algorithm for scattergl [#2499]
  • Improved regl-line2d component [#2556]

Fixed

  • Fix memory leak in parcoords traces [#2415]
  • Fix scattergl selectedpoints clearance under select/lasso drag modes [#2492]
  • Fix scattergl horizontal lines rendering [#2564]
  • Fix scattergl unselected marker opacity for array marker opacity traces [#2503]
  • Fix scattergl hover over data gaps [#2499]
  • Fix ohlc on category axes [#2561]
  • Fix inconsistencies in ohlc and candlestick event data [#2561]
  • Fix hover text for candlestick traces [#2561]
  • Fix scattermapbox selections for traces with data gaps [#2513]
  • Fix table border cases that got previously cut off [#2511]
  • Fix box traces with one jittered outlier [#2530]
  • Fix cliponaxis: false on reversed axes [#2533]
  • Fix buggy plot_bgcolor rendering when updating axis overlaying attribute [#2516]
  • Fix buggy Plotly.react behavior for carpet, contourcarpet, scattercarpet,
    table and x/y/z column heatmap traces [#2525]
  • Fix buggy Plotly.react behavior for ohlc and candlestick traces [#2561]
  • Fix ordered categories on graphs with visible: false traces [#2489]
  • Fix ordered categories in multi-subplot graphs [#2489]
  • Fix inconsistencies when ordering number and numeric string categories [#2489]
  • Fix format days in English locale [#2490]
  • Handle HTML links with encoded URIs correctly in svg text labels [#2471]

v1.35.2

09 Mar 16:33
Compare
Choose a tag to compare

Fixed

  • Pin mapbox-gl to 0.44.1 so that users on fresh
    npm install do not get the wrong mapbox-gl version message [#2467]
  • Fix swapping between scatter and scatter3d traces and other
    potential problems caused by incorrect axis constraints resetting [#2465]

v1.35.1

09 Mar 02:53
Compare
Choose a tag to compare

Fixed

  • Fix scatterpolar in dist and CDN bundles
    (due to browser-pack-flat discrepancy introduced in 1.35.0) [#2458]
  • Fix removing and adding scatter(gl) as not the first module [#2455]
  • Ensure we don't draw ticks if there are none to draw [#2454]

v1.35.0

07 Mar 20:29
Compare
Choose a tag to compare

Added

  • Add automargin attribute to cartesian axes which auto-expands margins
    when ticks, tick labels and/or axis titles do not fit on the graph [#2243]
  • Add support for typed arrays as data array inputs [#2388]
  • Add layout grids attribute for easy subplot generation [#2399]
  • Implement cliponaxis: false for bar text [#2378]
  • Add opposite axis attributes for range slider to control y axis range behavior [#2364]
  • Generalize hoverdistance and spikedistance for area-like objects [#2379]
  • Bring scattergl auto-range logic to par with SVG scatter [#2404]
  • Add selected/unselected marker color size support to scattermapbox traces [#2361]

Changed

  • Remove all circular dependencies in our src/ directory [#2429]
  • Build our CDN bundles with browser-pack-flat browserify plugin [#2447]
  • Bump mapbox-gl to v0.44.0 [#2361]
  • Bump glslify to v6.1.1 [#2377]
  • Stop relinking customdata, ids and any matching objects
    in gd._fullLayout during Plots.supplyDefaults [#2375]

Fixed

  • Fix buggy auto-range / auto-margin interaction
    leading to axis range inconsistencies on redraws
    (this bug was mostly noticeable on graphs with legends) [#2437]
  • Bring back scattergl lines under select/lasso dragmode
    (bug introduced in 1.33.0) [#2377]
  • Fix scattergl visible toggling for graphs with multiple traces
    with different modes (bug introduced in 1.33.0) [#2442]
  • Bring back spikelines for traces other than scatter
    (bug introduced in 1.33.0) [#2379]
  • Fix Plotly.Fx.hover acting on multiple subplots
    (bug introduced in 1.32.0) [#2379]
  • Fix range slider with stacked y axes positioning
    (bug introduced in 1.32.0) [#2451]
  • Fix scattergl color clustering [#2377]
  • Fix Plotly.restyle for scattergl fill [#2377]
  • Fix multi-line y-axis label positioning [#2424]
  • Fix centered hover labels edge cases [#2440, #2445]
  • Fix hover labels in bar groups in compare mode [#2414]
  • Fix axes and axis lines removal [#2416]
  • Fix auto-sizing in Plotly.react [#2437]
  • Fix error bars for Plotly.react and uneven data arrays [#2360]
  • Fix edits for date-string referenced annotations [#2368]
  • Fix z hover labels with exponents [#2422]
  • Fix yet another histogram edge case [#2413]
  • Fix fall back for contour labels when there's only one contour [#2411]
  • Fix scatterpolar category angular period calculations [#2449]
  • Clear select outlines on mapbox zoomstart [#2361]
  • Fix legend click to causes legend scroll bug [#2426]

v1.34.0

12 Feb 14:54
Compare
Choose a tag to compare

Added

  • Add Plotly.react, a new do-it-all API method that creates and update graphs
    using the same API signature [#2341]
  • Add constraint-type contours to contour traces [#2270]
  • Add notched and notchwidth attributes to box traces [#2305]
  • Add localization machinery to auto-formatted date axis ticks [#2261]
  • Add support for text in mesh3d traces [#2327]
  • Add support for scalar text in surface traces [#2327]
  • Make mode bar for graphs with multiple subplot types more usable [#2339]
  • Add npm@5 package-lock file [#2323]

Changed

Fixed

  • Prevent page scroll on mobile device on gl2d and gl3d subplots [#2296]
  • Fix multi-marker scattergl selection errors (bug introduced in 1.33.0) [#2295]
  • Fix Plotly.addTraces in scattergl selection call backs (bug introduced in 1.33.0) [#2298]
  • Fix trace opacity restyle for scattergl traces (bug introduced in 1.33.0) [#2299]
  • Fix scattergl handling of selectedpoints across multiple traces [#2311]
  • Fix scattergl horizontal and vertical line rendering [#2340]
  • Fix restyle for scalar hoverinfo for scatter3d, surface and mesh3d traces [#2327]
  • Fix table when content-less cells and headers are supplied [#2314]
  • Fix Plotly.animate for attribute nested in dimensions containers [#2324]
  • Fix hoverformat on visible: false cartesian axes (bug introduced in 1.33.0) [#2329]
  • Fix handling of double negative translate transform values [#2339]
  • Fix compare hovermode fallback for non-cartesian subplot types [#2339]
  • Fix animation error messages when overriding and ignoring frames updates [#2313]

v1.33.1

24 Jan 22:25
Compare
Choose a tag to compare

Fixed

  • Fix selection on scattergl plots with >20k points [#2266]
  • Update Spanish localization with new strings [#2268]
  • Fix test_dashboard overly rigid restriction so parcoods works there [#2273]
  • Make layout.colorway compatible with sankey traces [#2277]
  • Fix click events on fixedrange subplots [#2279]
  • Remove ghost fill when trace data is emptied out [#2280]
  • Fix resizing of new scattergl plots [#2283]
  • Fix positioning of carpet axis titles for cheaterslope edge cases [#2285]
  • Fix coloring and hover info for heatmaps and contour maps with nonuniform bins [#2288]

v1.33.0

18 Jan 22:17
Compare
Choose a tag to compare

Added

  • Completely rewritten scattergl trace type using regl [#2258]
  • Completely rewritten polar chart renderer accompanied by new
    scatterpolar and scatterpolargl trace types [#2200]
  • Add the ability to draw layout images and layout shapes on subplot
    with scattergl traces [#2258]
  • Add fill capabilities to scattergl traces [#2258]
  • Add spikedistance, hoverdistance and skipsnap for more customizable
    spikes and hover behavior on cartesian subplots [#2247]
  • Add official Spanish translation (locale es) [#2249]
  • Add official French translation (locale fr) [#2252]
  • Add locale machinery to annotation new text placeholder [#2257]

Changed

  • Old polar trace types (scatter with (r,t) coordinates,
    bar with (r,t) coordinates and area) are now deprecated.

Fixed

  • Fix gl2d tick label on pan interaction regression [#2258]
  • Fix candlestick hover label regression (bug introduced in v1.32.0) [#2264]
  • Fix several gl2d axis related bugs with new regl-based scattergl [#2258]
    See full list under the On-par gl2d milestone https://github.com/plotly/plotly.js/milestone/3
  • Fix several polar bugs with scatterpolar [#2200].
    See full list under the On-par polar milestone https://github.com/plotly/plotly.js/milestone/2
  • Fix scattergl marker.colorscale handling [#2258]
  • Fix ternary relayout calls involving axis tick styles and titles [#2200]
  • Fix decimal and thousands settings in de locale [#2246]
  • Make scroll handler passive, removing those annoying console warnings [#2251]

v1.32.0

11 Jan 15:39
Compare
Choose a tag to compare

Our blog post outlining some of these features: https://medium.com/@plotlygraphs/notes-from-the-latest-plotly-js-release-b035a5b43e21. The full list of changes is below.

Added

  • Add localization machinery [#2195, #2207, #2210, #2232],
    including an official German translation (locale de) [#2217]
  • Add violin trace type [#2116]
  • Add selected and unselected attribute containers to customize selection states [#2135]
  • Add support for multi-selections [#2140]
  • Add layout colorway to custom the trace-to-trace color sequence [#2156]
  • Add tickformatstops to set tick format per cartesian axis range [#1965]
  • Add hover labels and selections to box points [#2094]
  • Histogram events & bin hover label improvements [#2113]
  • Add support for aggregation in pie traces [#2117]
  • Add annotations startarrowhead, arrowside, startarrowsize and startstandoff attributes [#2164]
  • Add zhoverformat to format z values in heatmap, contour and 2d histogram traces [#2106, #2127]
  • Add marker.opacity to bar traces [#2163]
  • Add Cividis colorscale [#2178]
  • Implement transform inverse mapping [#2126, #2162]

Changed

  • Selections are now persistent [#2135]
  • Make subplot initialization and removal more robust and consistent [#2227]
  • Share WebGL context between gl2d and parcoords subplots [#2159, #2238]
  • Rename Save and edit plot in cloud mode bar button Edit in Chart Studio [#2183]
  • Minify bundles using minify-stream instead of UglifyJS2 [#2187]
  • Update header for new year 2018 [#2231]
  • Remove type="text/javascript" from <script> tags present in our docs and test utilities [#2217]

Fixed

  • Fix right-click handling [#2241]
  • Miscellaneous fixes for table traces [#2107, #2182]
  • Fix horizontal legend items alignment edge case [#2149]
  • Fix shape and updatemenu layering [#2121]
  • Fix bar with error bar with set ids edge case [#2169]
  • Fix cliponaxis: false for non linear cartesian axes [#2177]
  • Fix heatmap non-uniform brick gaps problem [#2213]
  • Fix choropleth selection when visible: false trace are present on graph [#2099, #2109]
  • Fix yet another contour drawing bug [#2091]
  • Clean up pie event data [#2117]
  • Fix scatter + bar hover edge cases [#2218]
  • Allow hover labels to extend to edges of graph area [#2215]
  • Harden location-to-feature against non-string country names for geo subplot [#2122]
  • Remove obsolete smith attribute from plot schema [#2093]
  • Fix colorbar class name [#2139]
  • Make Plotly.Plots.resize accept graph ids (as well as graph divs) [#2212]