All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
- #739 Async Slider and RangeSlider
- #729 Handle case where dcc fails to load when used inside an iframe with a sandbox attribute that only has allow-scripts
- #730 Fixed bug in which input components with type
numberdid not correctly update their values. - #731 Fixed bug where non-clearable dropdowns could still be cleared by typing backspace
- #734 Fix JS-facing release bug where
Plotly.jswas listed indevDependenciesinstead ofdependencies
- #711 Added support for
dcc.Link(dccLink) and nesteddcc.Markdown(dccMarkdown) react components inside ofdcc.Markdown - #706
- Added new
responsiveproperty that overrides the underlying Plotly.js graph responsiveness from Dash-land - Added responsiveness on graph parent element resize (previously only worked on window.resize)
- Added new
dash-graph--pendingclass to dcc.Graph, present while resizing, (re-)rendering, loading
- Added new
- #723 Changed npm package content to allow source code inclusion from other projects
- #725 Improve async graph performance by parallelizing resource fetching instead of fetching sequentially
- #720
highlight.jsis now bundled into the package, and no longer sets thewindow.hljsvariable. Similarly to howplotly.jsis handled, it is overridden by a user-provided version if one exists.
- #732
- Upgraded plotly.js to 1.52.1
- Feature release 1.52.0 which contains:
- Patch release 1.52.1 containing several bug fixes.
- #706
- Upgraded plotly.js to 1.51.3
- #695 Improvements to Slider and RangeSlider
- Marks outside of the range specified by
minandmaxare now omitted when the slider renders. - Padding is now dependent on the orientation (vertical or horizontal), and whether or not tooltips are always displayed.
- The whitespace is now preserved for
markslabels.
- Marks outside of the range specified by
- #695 Added new property
verticalHeightto Slider and RangeSlider, to allow the user to specify the height (in px) of vertical sliders. This defaults to400.
- #696 Fix IE11 compatibility issues and ES5 compatibility and validation
- #687 Use
start_date,min_date_allowed,end_date, ormax_date_allowedfor the initial visible month if the value of the parameterinitial_visible_monthis not supplied.
- #692 Async DatePickerSingle, DatePickerRange, Dropdown, Markdown, Upload components
- #693 Upgraded plotly.js to 1.51.1
- Feature release 1.51.0 which contains:
- A new
imagetrace type to display 3- or 4-channel color images as data automarginforpiecharts for better readability when labeling lots of small slices- Toggle-type
updatemenus zh-CNlocalization- And various other small features and bug fixes
- A new
- Patch release 1.51.1 containing several bug fixes.
- Feature release 1.51.0 which contains:
- #616 Async Graph and Plotly.js
- #681 Fix a bug with the dcc.Graph component logging errors in certain circumstances when nested inside a dcc.Loading component
- Added
search_valueprop toDropdown, for server-side options loading/filtering. #660
- Upgraded plotly.js to 1.50.0 #675
- Feature release 1.50.0 which contains:
- A new
treemaptrace type for display of hierarchical data. texttemplatesupport for all traces with on-graph text, and custom date formatting for templated on-graph and hover text.- Transitions (animation) for
barcharts. - Numerous other performance improvements, features, and bug fixes.
- A new
- Patch release 1.49.5 containing several bug fixes.
- Feature release 1.50.0 which contains:
- Fix regression in DatePickerRange, DatePickerSingle, Input #652
- Added support for persistence of user-edited props to value-input components:
Checklist,DatePickerRange,DatePickerSingle,Dropdown,Input,RadioItems,RangeSlider,Slider,Tabs, andTextarea. New props arepersistence,persistence_type, andpersisted_props. Setpersistenceto a truthy value to enable, the other two modify persistence behavior. See plotly/dash#903 for more details. #646
-
Fixed
SliderandRangeSlidercomponents withtooltip.always_visible#640 -
Fixed an infinite loop problem when
Graphis wrapped byLoadingcomponent #608
-
Fixed problems with
Graphcomponents leaking events and being recreated multiple times if declared with no ID #604 -
Fixed problem with
DatePickerRangecomponent aboutclearablenot working #614 and #594
- Fixed inconsistent behavior of
inputwithtype=number#580
- Upgraded plotly.js to 1.49.0 #589
- Feature release 1.49.0 which contains:
- New
indicatortrace type for gauge and KPI displays. - Lots of tile map improvements:
choroplethmapboxanddensitymapboxtrace types, numerousstyleoptions formapboxsubplots that do not require a Mapbox access token, and more. - Various bug fixes and smaller improvements.
- New
- Feature release 1.49.0 which contains:
Markdowncomponents support code highlighting - no need to switch toSyntaxHighlighter, which has been removed. Use triple backticks, with the opening backticks followed by the language name or abbreviation. #562 Supported languages:- Bash
- CSS
- HTTP
- JavaScript
- Python
- JSON
- Markdown
- HTML, XML
- R
- Ruby
- SQL
- Shell Session
- YAML
- Added a
dedentprop toMarkdowncomponents, and enabled it by default - removing all matching leading whitespace from every line that has any non-whitespace content. You can disable this withdedent=False. #569 - Ability to add tooltips to
SliderandRangeSlider, which can be visible always or on hover. Tooltips also take a position argument. #564
- Fixed
min_date_allowedandmax_date_allowedbug inDatePickerRange#551 - Fixed unwanted
resize()calls on unmountedGraphs #534 - Fixed
tab--disabledCSS class issue inTabcomponent with custom styling #568
- Changed
dcc.Checklistpropvaluestovalue, to match all the other input components #558. Also improved prop types forDropdownandRadioItemsvalueprops to consistently accept both strings and numbers.
- 💥 Removed the
SyntaxHighlightercomponent. This is now built intoMarkdown#562. - Removed the
containerPropsprop inMarkdown- after the refactor of #562, its function is served by theid,className, andstyleprops. #569 - Removed
version.py- use__version__in the main namespace instead. #555
- Upgraded plotly.js to 1.48.3 #571
- Feature release 1.48.0 which contains:
- New
funnelandfunnelareatrace types - Shared color axes and colorbars
- Sorting cartesian axes by the value on the opposite axis
- Improvements to
bar&waterfalltext, legend clicking, histogram binning, hover text, and more
- New
- Patch releases 1.48.3, 1.48.2, 1.48.1, 1.47.4, 1.47.3, 1.47.2, 1.47.1 containing numerous bug fixes
- Feature release 1.48.0 which contains:
figureprop indcc.Graphnow accepts aframeskey- Improved the
Dropdownoptions description for dash-docs #547 - Added
optionHeightprop toDropdown#552 - Merged in R
dashCoreComponentspackage and updated to 0.48.0
- Removed unused
keyprop fromdcc.ConfirmDialog
- Fixed style regression in DatePickerSingle and DatePickerRange #518
- Breaking - In
dcc.Input, fixed several HTML properties that weren't properly camel cased and therefore were not actually applied in the DOM #523:autocompleteis nowautoCompleteautofocusis nowautoFocusinputmodeis nowinputModemaxlengthis nowmaxLengthminlengthis nowminLength
- Improved property definitions of various components in anticipation of upcoming component validation (plotly/dash-renderer#100). #523
- Breaking -
n_blur_timestamp&n_submit_timestampinInput&Textareais now a number instead of a date object/string. This matches the form ofn_clicks_timestampas used indash_html_components. #523 - Fixed an issue with
ConfirmDialogthat could display multiple confirm popups instead of a single popup in certain contexts. #523 dcc.MarkdowncontainerPropsis now applied to the component's container again. This was broken in 0.45.0'sreact-markdownupgrade.
-
dcc.Intervalwill reset its timer when re-enabled. Previously, if thedcc.Intervalwas disabled, it's "clock would keep running": when it was reenabled, it would fire at the nextintervalon the previous clock's schedule, rather thanintervalmilliseconds later. For example, previously the schedule might look like this:0 seconds: interval started with `interval=5000` 5 seconds: `n_intervals=1` 7 seconds: callback sets `disabled=True` 10 seconds: interval continues to run, but doesn't fire an update 13 seconds: callback sets `disabled=False` 15 seconds: interval fires an update: `n_intervals=2`Now, it will look like this:
0 seconds: interval started with `interval=5000` 5 seconds: `n_intervals=1` 7 seconds: callback sets `disabled=True` - interval stops 13 seconds: callback sets `disabled=False` - clock resets 18 seconds: interval fires an update: `n_intervals=2`
extendDataprop forGraphcomponent. This feedsPlotly.extendTracesfor incremental data updates. #461
- Upgrade from React 15.4.2 to 16.8.6
- Upgrade from react-date 12.3.0 to 20.1.0
- Fix unnecessary
loading_stateprop forInputcomponent. #498 - Ensure
DatePickerSinglecallbacks fire with cleared dates. #511 - Fixes incorrect default values for
configprop ofGraph. #515
- Upgraded plotly.js to 1.47.0 #516
- Feature release 1.47.0 which contains:
- New
volumegl3d trace type - Interactive node grouping for Sankey diagrams, using box or lasso selection
- Add way for Plotly.toImage and Plotly.downloadImage to export images with current graph width/height by passing width/height option as null
- Improvements to hover labels, legends, and more
- New
- Feature release 1.46.0 which contains:
- New
waterfalltrace type - New
sunbursttrace type - Implement connectgaps on surface traces
- Implement hovertemplate for box and violin points
- Display hover labels above modebar, ensuring that the hover labels are always visible within the graph div
- New
- Patch releases 1.46.1, 1.45.3, 1.45.2, and 1.45.1 containing numerous bug fixes
- Feature release 1.47.0 which contains:
restyleDataprop forGraphcomponent #483
dcc.Markdownnow uses GitHub-flavored markdown instead of CommonMark markdown. This was done as part of upgradingreact-markdownthird party library from 2.4.5 to 4.0.6. Compare the differences in these online editors: CommonMark editor, GitHub Markdown Editor. Notable changes:- A line break is now needed between paragraphs and lists.
- Links are automatically rendered.
- Many more features are supported like tables and strikethrough.
- Loading component #267
- Upgraded plotly.js to 1.45.0 #470
- Feature release 1.45.0 which contains:
- Sankey diagram improvements including circular networks, node grouping, and concentration colorscales
- Matching cartesian axes
- Better bar, box, and violin alignment control
- Orthographic 3D projections
- Hovertemplate support for more trace types, including all 3D traces
- And many other features and bug fixes
- Patch release 1.44.4 containing numerous bug fixes
- Feature release 1.45.0 which contains:
- Added event props
n_blurandn_clicks- along withn_blur_timestampandn_clicks_timestamp- inTextareacomponents, to maintain the functionality lost by removing theclickandblurevents. All other events were already covered by existing props. #444 - Merged in R
dashCoreComponentspackage and updated to 0.43.0
- Fix dynamically disabling and enabling
Intervalcomponents #436 - Clear date in DatePickerSingle and DatePickerRange #434
- Removed
Eventsystem - see plotly/dash#531 for details. #444
- Upgraded plotly.js to 1.44.1 #445
- Feature release 1.44.0 which contains:
- A new
isosurfacegl3d trace type - Animated transitions via
Plotly.reactusinglayout.transitions hovertemplatesupport in many more trace types- And many other features and bug fixes
- A new
- Patch releases 1.44.1 and 1.43.2 containing numerous bug fixes
- Feature release 1.44.0 which contains:
- Fix
dcc.Storetype changes #427
- Fix
dcc.Storenull values in list causing an infinite loop #424
- Upgraded plotly.js to 1.43.1 #423. This includes:
- Feature release 1.43.0, which contains:
multicategoryaxis type for hierarchical categoriesuirevisionattributes to control persistence of user-driven changes to the graphhovertemplatefor more control of hover labels for certain trace types- Alignment options for titles and legend items
- And many other features and bug fixes
- Patch releases 1.43.1, 1.42.5, 1.42.4, and 1.42.3 containing numerous bug fixes
- Feature release 1.43.0, which contains:
dangerously_allow_htmlprop for Markdown component for allowing HTML.
- Fix typos in DatePickerSingle props #361
- Add map files to manifest #413
- Put Input value set in onBlur/onSubmit under a debounce check #384
- Fixed issue #390 by providing better styles for vertical Tabs.
- Add Logout button (dash-deployment-server authentication integration) #388
- Updated
reactandreact-domto version^16.6.1 - Updated
react-docgento^2.21.0 - Updated
react-select-fast-filter-optionsto^0.2.3 - Updated
react-virtualized-selectto^3.1.3 - Upgraded
babeland dependencies to7.1.5 - Upgraded
enzymeand dependencies to3.7.0 - Removed
react-selectbecause it's unused - we're usingreact-virtualized-selectinstead.
- The issue #115
with datepicker, which didn't appear when the date value is
Nonewas fixed. By default, current month would appear in such cases forDatePickerRangeandDatePickerSinglecomponents. See pull request plotly#201. - Refactored the way the Graph component would generate an unique id if none provided.
- Default CSS imported via
style-loaderis now placed at top, so that user supplied CSS can overwrite it, fixes #380
- Changed the way the default CSS files for some components are loaded to being loaded with webpack instead of as dependencies.
- Updated
react-selectto version2.1.0
- Added
clickannotationevent todcc.Graph. See plotly#182.
- Some Input props weren't being picked up by React. Changed:
autocompletetoautoCompleteautofocustoautoFocusinputmodetoinputModemaxlengthtomaxLengthminlengthtominLength
- Unit tests for
Inputcomponent. - New
debounceprop forInputcomponent that determines if the input should update to a Dash server immediately, or on 'Enter' key. Fixes #169
minandmaxprop now won't update the input when values are lower than or greater thanminandmaxrespectively. Fixes#173stepprop can now be anumberand is therefor set correctly on the corresponding<input/>tag. Fixes #292
- The
npm startcommand now runs the Demo app again #346
- Upgraded plotly.js to 1.42.2 #354. This includes:
- Feature release 1.42.0 which contains:
- A new trace type
parcats(parallel categories) modebarstylingpietrace titles- And many other features and bug fixes
- A new trace type
- Patch releases 1.42.2 and 1.42.1 containing numerous bug fixes
- Feature release 1.42.0 which contains:
- Fix Input not used in callbacks resetting the value on updates. #350
- n_blur/n_submit and timestamps props added to the Input component. #326
npm run test-unitwill run new Jest+Enzyme unit tests- Unit tests for Tabs component
- Fixed bug in Tabs component where value was resetting if using callback-less mode #331
- Fixed bug with default Tabs value not being set to children's Tab value (if it's set)
- Fixed bug where Tabs.children.props wheren't being selected properly, related to #84
- Fix Store component nested data #333
- Patched plotly.js version 1.41.3 #320. This includes patch releases 1.41.3, 1.41.2, and 1.41.1 containing numerous bug fixes.
- Added Store component #248
- Updated NPM scripts:
testnow runs Selenium integration testsformatruns Prettier formatter- There are new
buildscripts, most notablybuild:watchruns a watcher and rebuilds upon changes - There's a new
publish-allscript that publishes to NPM and PyPi
- The
startscript will now run theDemoapplication
- Fixed regression in Graph component where it wouldn't resize correctly #256
- Renamed
__init__.pyexternal_path to dash_core_components.min.js
- Unminified dev bundle support. #293
-
Upgraded Plotly.js, the underlying library behind the
dash_core_components.Graphcomponent, to version 1.41.0 #302. Feature release 1.41.0 adds:- Stacked area charts, as part of
scattertraces - A new
barpolartrace type for polar "bar" traces. This replaces and improves the deprecatedareatrace type. - A
responsiveplot config option - And various other features and bug fixes.
Many of these features were funded directly by companies that rely on this library. If your organization or company would like to sponsor particular features or bug fixes in these open source libraries, please reach out: http://plot.ly/products/consulting-and-oem
- Stacked area charts, as part of
- The
Intervalcomponent'smax_intervalprop can now be used to stop/restart the interval. Fixes #266 - The
Graphcomponent'sidis now not required to be set.
- Fixed bug where Graph would resize randomly when rerendered, for example in a dcc.Tabs component.
- Fixed bug in Tabs component where initial tab content wasn't rendering, #282
- Fixed bug in Tabs component where no default Tab is selected if Tabs.value is empty
candlestickandOHLCcharts are now plotted using thePlotly.reactmethod instead of thePlotly.newPlotmethod.
- Fix bug where front-end error was thrown when setting
Graph.figure = {}(fixes [#260]).
- Upgraded plotly.js to version 1.40.1 #280. This includes Feature release 1.40.0 and patch releases 1.40.1, 1.39.4, 1.39.3, and 1.39.2, containing:
contourtrace legend itemspiecolorwayandextendpiecolorsattributes for more control overpiecolors- And many other features and bug fixes
Tabs.childrencan now be undefined, so you can update them dynamically. #265TabsCallback-less version no longer has the 2nd tab selected by default #262- Fixes bug with nested
Tabs#273 and #272
ConfirmDialogProvidercan now be used without a callback. #241ConfirmDialog, only firesubmitwhensubmitis clicked. #242 fixed in #241
dash_core_components/__init__.pynow imports from python class files rather than generating classes at runtime, adding support for IDE autocomplete etc.
- New Tabs and Tab components! #213
__init__version formatting for unpkg.
ConfirmDialogandConfirmDialogProvidercomponents #211
- Improved DatePickerRange, fixing issues #209 and #152
- Link component now is a proper tag so you can right click on it, and will scroll back to top. Fixes #99, implemented in #215
- Added
max_intervalprop toIntervalcomponent, fixing issue #222
- Upgraded plotly.js, the underlying library behind the
dash_core_components.Graphcomponent, to version 1.39.1 #228. This includes:- Feature release 1.39.0, which contains:
layout.templatecapability, along withPlotly.makeTemplateandPlotly.validateTemplate.- A new 3D
streamtubetrace type scatterglon-graph textpolarpolygon grids- And many other features and bug fixes
- Patch releases 1.39.1, 1.38.3, 1.38.2, and 1.38.1 containing numerous bug fixes.
- Many of these features were funded directly by companies that rely on this library. If your organization or company would like to sponsor particular features or bug fixes in these open source libraries, please reach out: http://plot.ly/products/consulting-and-oem
- Feature release 1.39.0, which contains:
- Upgraded plotly.js to version 1.38.0 #207. This includes:
- Feature releases 1.38.0, 1.37.0, and 1.36.0, which contain:
- A new 3D
conetrace type to visualize vector fields - A new
splom(aka Scatter PLOt Matrix) trace type - Performance improvements for
splomand other multi-subplot graphs plotly_legendclickandplotly_legenddoubleclickevents- Multi-selection and click-to-select for
parcoordsaxes - Fixed-size shapes
- And many other features and bug fixes
- A new 3D
- Patch releases 1.37.1 and 1.36.1 containing numerous bug fixes
- Feature releases 1.38.0, 1.37.0, and 1.36.0, which contain:
dcc.Inputcomponent now handlesdisabled=Falseproperty.- Broken sourcemaps for debugging.
- Testing configuration for CHROMEPATH and SERVER_PROCESSES
- Various bugs with the
ohlcandcandlestickchart type in thedcc.Graphcomponent were fixed. See plotly#184.
- Previously, if a user named their app file
dash.py, an unhelpful error message would be raised. Now,import dash_core_componentswill check if the user has a file nameddash.pyand warn the users appropriately. plotly#177
- In some cases, frequently multi-page apps, the
dcc.Graphinteractive properties will stop working (selectedData,hoverData,relayoutData). This should be fixed now. plotly#178 dcc.Graphwill now resize after it it plotted for the first time. This should fix issues where thedcc.Graphcomponent was not fitting to the size of its container. plotly#178
- Upgraded Plotly.js, the underlying library behind the
dash_core_components.Graphcomponent, to version 1.35.2 #174. This includes Feature release 1.35.0 and patch releases 1.35.2, 1.35.1, which contain:- An
automarginattribute for cartesian axes with long tick labels - Support for typed arrays as data inputs
- layout
gridattribute for easy subplot generation - And numerous other features and bug fixes
- An
- The
selectedData,clickData, andhoverDatacallbacks were being attached without being removed every time the graph was updated. They are now removed and reattached. #172
- The
serve_locallywas broken - the Plotly.js bundle wasn't being served correctly.
- Upgraded plotly.js, the underlying library behind the
dash_core_components.Graphcomponent, to version 1.34.0 #170. Feature release 1.34.0 contains:Plotly.react, a new do-it-all API method that creates and updates graphs using the same API signature- Constraint-type contours in
contourtraces notchedboxtraces- Localization machinery for auto-formatted date axis ticks
- And many other features and bug fixes
PropTypesnow usesprop-typespackage instead ofReactto support move to React 16+
- Patched plotly.js to version 1.33.1 #151. Patch release 1.33.1 includes numerous bug fixes.
- Upgraded Plotly.js, the underlying library behind the
dash_core_components.Graphcomponent, to version 1.33.0. This was a huge release! Here are some of the new features that are available:- Completely rewritten
scattergltrace type usingreglplotly.js#2258 - Completely rewritten polar chart renderer accompanied by new
scatterpolarandscatterpolargltrace types plotly.js#2200. The old polar trace types -scatterwith(r, t)coordinates, bar with(r, t)coordinates, andarea- are now deprecated. - Add the ability to draw layout images and layout shapes on subplot with
scattergltraces plotly.js#2258 - Add
fillcapabilities toscattergltraces plotly.js#2258 - Add
spikedistance,hoverdistanceandspikesnapfor more customizable spikes and hover behavior on cartesian subplots plotly.js#2247 - Add official Spanish translation (locale
es) plotly.js#2249 - Add official French translation (locale
fr) plotly.js#2252 - And numerous other features and bug fixes
- Many of these features were funded directly by companies that rely on this library. If your organization or company would like to sponsor particular features or bug fixes in these open source libraries, please reach out: http://plot.ly/products/consulting-and-oem
- Completely rewritten
- Previously, if
Noneis supplied toSyntaxHighlighterorMarkdown, the component would not render and the app would break. This is problematic because ifchildrenisn't supplied (as done in the case for when you are updating that property from a callback),Noneis the default property. Fixes plotly#147. This bug was introduced in v0.15.4.
- The
dcc.Graphcomponent now includespointNumbersinsideselectedDataandhoverDataif the chart type is ahistogram,histogram2d, orhistogram2dcontour.
- Upgraded Plotly.js, the underlying library behind the
dash_core_components.Graphcomponent, to version 1.32.0 #143. Feature release 1.32.0 includes:- Localization machinery, including an official German translation (locale
de) - A new
violintrace type - Selection improvements:
selectedandunselectedattribute containers to customize selection states, Support for multi-selections, persistent selections. colorwayattribute to customize the trace-to-trace color sequence- Add
tickformatstopsto set tick format per cartesian axis range - And many more features and bug fixes
- Localization machinery, including an official German translation (locale
- The
dash_core_components.Locationanddash_core_components.Linkproperties should now work on Internet Explorer. Thanks to @nedned for suggesting a solution. Fixes plotly#113
- The
dash_core_components.Locationcomponent now supportshash,href, andsearchin addition to the already supportedpathname(mimicking thewindow.locationAPI).hrefcan be used to handlepathname,hash, andsearchin aggregate, or each can be manipulated independently. - The
childrenproperty ofdash_core_components.Markdownanddash_core_components.SyntaxHighlighternow accepts an array of strings (previously it had to be a string). Now, if an array is provided, it is collapsed into a string with line breaks (see #134).
- Patched plotly.js to version 1.31.2 #125, including patch releases 1.31.2 and 1.31.1 with numerous bug fixes.
- The
Intervalcomponent has a new property:n_intervals. This is an integer that increases every time that the interval passes. This allows you to use theIntervalcomponent without using theevents=[Event(...)]pattern inside the callback.
This is similar to the n_clicks property of the dash_html_components
components.
This was the last use case for events=[Event(...)] inside the
dash_core_components library. Ultimately, we may be able to deprecate this
pattern.
- The
dash_core_components.Input(type='number')component actually converts the values to floats or integers, instead of passing the numbers back as strings. plotly#100 Big thanks to community contributor @Madhu94!
- The
disable_clickproperty in thedcc.Uploadcomponent now works. plotly#106. Big thanks to community contributor @Akronix! - Several properties in several components had the wrong
propTypes. This has been fixed, improving the documentation for the Dash python classes (and removing warnings in JS development). Big thanks to community contributor @Akronix!
- Attempt to fix the JS builds from 0.15.0 but actually nothing changed.
- Bad build. See 0.15.2 for the correct build
- An
Uploadcomponent! 🎉 See https://plot.ly/dash/dash-core-components/upload for docs.
- Upgraded plotly.js to version 1.31.0. This includes:
- Two huge feature releases by the plotly.js team! 👏 - 1.31.0 and 1.30.0, which contain:
- A new
tabletrace type geo.centermaking geo views fully reproducible- Extend lasso and select-box drag modes to
bar,histogram,scattergeo, andchoroplethtrace types aggregatetransforms- And many other features and bug fixes
- A new
- Patch release 1.30.1 with bug fixes
- Two huge feature releases by the plotly.js team! 👏 - 1.31.0 and 1.30.0, which contain:
- Fixed issues related to updating the
max_date_allowedproperty ofDatePickerSingleandDatePickerRangeprogrammatically through callbacks - Clicking on the end date in the
DatePickerRangewill now open up the calendar to the end date (plotly#80)
- Cleaned up
DatePickerSingleandDatePickerRange
- Non-ascii characters, like chinese characters, are now supported as
search strings in the
dcc.Dropdowncomponent (plotly#75)
- The
Intervalcomponent was constantly resetting its interval on every update. Initially reported in https://community.plot.ly/t/multiple-interval-object-in-a-single-page/5699/3 - Removed the used
labelproperty from theSlidercomponent - Provide a more descriptive documentation for the
marksproperty of theSlidercomponent
- A
disabledproperty on theIntervalcomponent will disable the interval component from firing its updates.
- Added
classNameandstyleproperties to the parentdivs of theChecklist,Dropdown,GraphandRadioItemscomponent. As requested in plotly#57, solved in plotly#60
- Previously, the
max_date_allowedcould not be selected. This issue has been fixed, issue first reported in https://community.plot.ly/t/solved-datepicker-in-dash/4816/10
- Previously, when the
optionsof adcc.Dropdownwould change, the options would no longer be searchable. That has been fixed. Issue was originally reported in https://community.plot.ly/t/dropdown-not-searching-values-when-typing/5323/3
- Disabled portal settings on
dcc.DatePickerSingleanddcc.DatePickerRangewhenvertical=True.with_portalandwith_full_screen_portalwill only apply ifvertical=False.
- Added two new date picker components:
dcc.DatePickerSingleanddcc.DatePickerRange
- Added support for all of the valid HTML attributes of the
Inputcomponent. - Added support for a few more
typevalues of theInputcomponent. The full list of valid types are 'text', 'number', 'password', 'email', 'range', 'search', 'tel', 'url', 'hidden'. Note that type values that don't have cross-browser support are not included (such asdatetime)
- The
Dropdowncomponent rendersoptionsmuch, much faster. It can render 50,000 options (client-side) without crashing! This fixes plotly/dash#103
- Upgraded plotly.js to version 1.29.3, including feature releases 1.29.0 and 1.28.0, and patch releases 1.29.3, 1.29.2, 1.29.1, 1.28.2, 1.28.1, and 1.27.1 This includes TONS of fixes and improvements, notably:
- Add touch interactions to cartesian, gl2d and ternary subplots including for select and lasso drag modes
- Add support for contour line labels in contour and contourcarpet traces
- Add support for select and lasso drag modes on scattermapbox traces
- Add reset view and toggle hover mode bar buttons to mapbox subplots
- Add support for array marker.opacity settings in scattermapbox traces
- Add namelength layout and trace attribute to control the trace name's visible length in hover labels
- Add cliponaxis attribute to scatter and scatterternary traces to allow markers and text nodes to be displayed above their subplot's axes
- Add axis layer attribute with 'above traces' and 'below traces' values
- A
configproperty of theGraphcomponent that exposes the plotly.js config properties. Here's an example that hides 2 buttons and makes the elements in the graph "editable":
import dash
import dash_core_components as dcc
import dash_html_components as html
app = dash.Dash()
app.layout = html.Div([
dcc.Graph(
id='my-graph',
figure={'data': [{'x': [1, 2, 3]}]},
config={'editable': True, 'modeBarButtonsToRemove': ['pan2d', 'lasso2d']}
)
])
if __name__ == '__main__':
app.run_server(debug=True)
- A new
Textareacomponent for displaying the simple Textarea HTML element. The content of theTextareais controlled through thevalueproperty:
dcc.Textarea(id='my-text-area' value='''
SELECT * FROM MY_TABLES
LIMIT 10;
''')
- Clearing a Graph selection box sets the
selectedDatavalue toNone(nullin JavaScript). Before, it didn't change theselectedDataproperty, preventing the user and the Dash developer from clearing selections. Fixes plotly/dash#97, thanks to @pmbaumgartner for reporting.
- The
clearableproperty to theDropdown, which toggles on and off the "x" on the side of the dropdown that clears the current selection. - The
searchableproperty to theDropdown, which toggles on and off whether theDropdownis searchable.
- Clicking on the little
xon the side of the Dropdown to clear the currently selected value didn't work. Now it does. Ifmulti=false, thennull(or Python'sNone) is set. Ifmulti=True, then[]is set.
- The
Sliderand theRangeSlidercomponent can update when the user finishes dragging the slider rather than just while they drag. The default behaviour has remained the same (updates while dragging) but you can toggle that the updates only get fired on "mouse up" by settingupdatemodeto'mouseup'('drag'is the default). - A
LinkandLocationwere added.Locationrepresents the address bar of the web browser andLinkprovides a way to modify the address bar without refreshing the page. Combined, these two components can be used to create a "single page app" with multiple URLs. That is, apps that have mulitple URLs but surfing between the different pages doesn't trigger a full page refresh like it would with traditional links. - Previously, if callback functions weren't supplied to a component, it wouldn't update. This caused a lot of confusion: users would create a simple layout without any callbacks and then wonder why the sliders wouldn't slide or the text inputs wouldn't update. Now, all of the components manage their own state and their appearance will update regardless of whether Dash has assigned a callback to them.
- A
rangeobject is now included in theselectedDataobject that specifies that dimensions of the selected region. - A
lassoPointsobject is now included in theselectedDataobject that provides coordinates of the lassoed region.
- A new property
clear_on_unhoveron theGraphcomponent will clear thehoverDataproperty when the user "unhovers" from a point if True. If False, then thehoverDataproperty will be equal to the data from the last point that was hovered over. The default is False.