plotly.js 1.51.2 → 1.52.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +93 -0
- package/LICENSE +1 -1
- package/README.md +1 -1
- package/dist/README.md +25 -25
- package/dist/plot-schema.json +529 -77
- package/dist/plotly-basic.js +1560 -689
- package/dist/plotly-basic.min.js +3 -3
- package/dist/plotly-cartesian.js +2373 -1050
- package/dist/plotly-cartesian.min.js +3 -3
- package/dist/plotly-finance.js +1880 -900
- package/dist/plotly-finance.min.js +3 -3
- package/dist/plotly-geo-assets.js +4 -4
- package/dist/plotly-geo.js +4066 -1010
- package/dist/plotly-geo.min.js +3 -3
- package/dist/plotly-gl2d.js +1142 -556
- package/dist/plotly-gl2d.min.js +3 -3
- package/dist/plotly-gl3d.js +1773 -1022
- package/dist/plotly-gl3d.min.js +3 -3
- package/dist/plotly-locale-af.js +1 -1
- package/dist/plotly-locale-am.js +1 -1
- package/dist/plotly-locale-ar-dz.js +1 -1
- package/dist/plotly-locale-ar-eg.js +1 -1
- package/dist/plotly-locale-ar.js +1 -1
- package/dist/plotly-locale-az.js +1 -1
- package/dist/plotly-locale-bg.js +1 -1
- package/dist/plotly-locale-bs.js +1 -1
- package/dist/plotly-locale-ca.js +1 -1
- package/dist/plotly-locale-cs.js +1 -1
- package/dist/plotly-locale-cy.js +1 -1
- package/dist/plotly-locale-da.js +1 -1
- package/dist/plotly-locale-de-ch.js +1 -1
- package/dist/plotly-locale-de.js +1 -1
- package/dist/plotly-locale-el.js +1 -1
- package/dist/plotly-locale-eo.js +1 -1
- package/dist/plotly-locale-es-ar.js +1 -1
- package/dist/plotly-locale-es-pe.js +1 -1
- package/dist/plotly-locale-es.js +1 -1
- package/dist/plotly-locale-et.js +1 -1
- package/dist/plotly-locale-eu.js +1 -1
- package/dist/plotly-locale-fa.js +1 -1
- package/dist/plotly-locale-fi.js +1 -1
- package/dist/plotly-locale-fo.js +1 -1
- package/dist/plotly-locale-fr-ch.js +1 -1
- package/dist/plotly-locale-fr.js +1 -1
- package/dist/plotly-locale-gl.js +1 -1
- package/dist/plotly-locale-gu.js +1 -1
- package/dist/plotly-locale-he.js +1 -1
- package/dist/plotly-locale-hi-in.js +1 -1
- package/dist/plotly-locale-hr.js +1 -1
- package/dist/plotly-locale-hu.js +1 -1
- package/dist/plotly-locale-hy.js +1 -1
- package/dist/plotly-locale-id.js +1 -1
- package/dist/plotly-locale-is.js +1 -1
- package/dist/plotly-locale-it.js +1 -1
- package/dist/plotly-locale-ja.js +1 -1
- package/dist/plotly-locale-ka.js +1 -1
- package/dist/plotly-locale-km.js +1 -1
- package/dist/plotly-locale-ko.js +1 -1
- package/dist/plotly-locale-lt.js +1 -1
- package/dist/plotly-locale-lv.js +1 -1
- package/dist/plotly-locale-me-me.js +1 -1
- package/dist/plotly-locale-me.js +1 -1
- package/dist/plotly-locale-mk.js +1 -1
- package/dist/plotly-locale-ml.js +1 -1
- package/dist/plotly-locale-ms.js +1 -1
- package/dist/plotly-locale-mt.js +1 -1
- package/dist/plotly-locale-nl-be.js +1 -1
- package/dist/plotly-locale-nl.js +1 -1
- package/dist/plotly-locale-no.js +1 -1
- package/dist/plotly-locale-pa.js +1 -1
- package/dist/plotly-locale-pl.js +1 -1
- package/dist/plotly-locale-pt-br.js +1 -1
- package/dist/plotly-locale-rm.js +1 -1
- package/dist/plotly-locale-ro.js +1 -1
- package/dist/plotly-locale-ru.js +1 -1
- package/dist/plotly-locale-sk.js +1 -1
- package/dist/plotly-locale-sl.js +1 -1
- package/dist/plotly-locale-sq.js +1 -1
- package/dist/plotly-locale-sr-sr.js +1 -1
- package/dist/plotly-locale-sr.js +1 -1
- package/dist/plotly-locale-sv.js +1 -1
- package/dist/plotly-locale-sw.js +1 -1
- package/dist/plotly-locale-ta.js +1 -1
- package/dist/plotly-locale-th.js +1 -1
- package/dist/plotly-locale-tr.js +1 -1
- package/dist/plotly-locale-tt.js +1 -1
- package/dist/plotly-locale-uk.js +1 -1
- package/dist/plotly-locale-ur.js +1 -1
- package/dist/plotly-locale-vi.js +1 -1
- package/dist/plotly-locale-zh-cn.js +1 -1
- package/dist/plotly-locale-zh-hk.js +1 -1
- package/dist/plotly-locale-zh-tw.js +1 -1
- package/dist/plotly-mapbox.js +1749 -1849
- package/dist/plotly-mapbox.min.js +3 -3
- package/dist/plotly-with-meta.js +6225 -3884
- package/dist/plotly.js +5898 -3754
- package/dist/plotly.min.js +3 -3
- package/dist/translation-keys.txt +17 -17
- package/lib/aggregate.js +1 -1
- package/lib/bar.js +1 -1
- package/lib/barpolar.js +1 -1
- package/lib/box.js +1 -1
- package/lib/calendars.js +1 -1
- package/lib/candlestick.js +1 -1
- package/lib/carpet.js +1 -1
- package/lib/choropleth.js +1 -1
- package/lib/choroplethmapbox.js +1 -1
- package/lib/cone.js +1 -1
- package/lib/contour.js +1 -1
- package/lib/contourcarpet.js +1 -1
- package/lib/contourgl.js +1 -1
- package/lib/core.js +1 -1
- package/lib/densitymapbox.js +1 -1
- package/lib/filter.js +1 -1
- package/lib/funnel.js +1 -1
- package/lib/funnelarea.js +1 -1
- package/lib/groupby.js +1 -1
- package/lib/heatmap.js +1 -1
- package/lib/heatmapgl.js +1 -1
- package/lib/histogram.js +1 -1
- package/lib/histogram2d.js +1 -1
- package/lib/histogram2dcontour.js +1 -1
- package/lib/image.js +1 -1
- package/lib/index-basic.js +1 -1
- package/lib/index-cartesian.js +1 -1
- package/lib/index-finance.js +1 -1
- package/lib/index-geo.js +1 -1
- package/lib/index-gl2d.js +1 -1
- package/lib/index-gl3d.js +1 -1
- package/lib/index-mapbox.js +1 -1
- package/lib/index.js +1 -1
- package/lib/indicator.js +1 -1
- package/lib/isosurface.js +1 -1
- package/lib/locales/af.js +1 -1
- package/lib/locales/am.js +1 -1
- package/lib/locales/ar-dz.js +1 -1
- package/lib/locales/ar-eg.js +1 -1
- package/lib/locales/ar.js +1 -1
- package/lib/locales/az.js +1 -1
- package/lib/locales/bg.js +1 -1
- package/lib/locales/bs.js +1 -1
- package/lib/locales/ca.js +1 -1
- package/lib/locales/cs.js +1 -1
- package/lib/locales/cy.js +1 -1
- package/lib/locales/da.js +1 -1
- package/lib/locales/de-ch.js +1 -1
- package/lib/locales/de.js +1 -1
- package/lib/locales/el.js +1 -1
- package/lib/locales/eo.js +1 -1
- package/lib/locales/es-ar.js +1 -1
- package/lib/locales/es-pe.js +1 -1
- package/lib/locales/es.js +1 -1
- package/lib/locales/et.js +1 -1
- package/lib/locales/eu.js +1 -1
- package/lib/locales/fa.js +1 -1
- package/lib/locales/fi.js +1 -1
- package/lib/locales/fo.js +1 -1
- package/lib/locales/fr-ch.js +1 -1
- package/lib/locales/fr.js +1 -1
- package/lib/locales/gl.js +1 -1
- package/lib/locales/gu.js +1 -1
- package/lib/locales/he.js +1 -1
- package/lib/locales/hi-in.js +1 -1
- package/lib/locales/hr.js +1 -1
- package/lib/locales/hu.js +1 -1
- package/lib/locales/hy.js +1 -1
- package/lib/locales/id.js +1 -1
- package/lib/locales/is.js +1 -1
- package/lib/locales/it.js +1 -1
- package/lib/locales/ja.js +1 -1
- package/lib/locales/ka.js +1 -1
- package/lib/locales/km.js +1 -1
- package/lib/locales/ko.js +54 -2
- package/lib/locales/lt.js +1 -1
- package/lib/locales/lv.js +1 -1
- package/lib/locales/me-me.js +1 -1
- package/lib/locales/me.js +1 -1
- package/lib/locales/mk.js +1 -1
- package/lib/locales/ml.js +1 -1
- package/lib/locales/ms.js +1 -1
- package/lib/locales/mt.js +1 -1
- package/lib/locales/nl-be.js +1 -1
- package/lib/locales/nl.js +1 -1
- package/lib/locales/no.js +1 -1
- package/lib/locales/pa.js +1 -1
- package/lib/locales/pl.js +1 -1
- package/lib/locales/pt-br.js +1 -1
- package/lib/locales/rm.js +1 -1
- package/lib/locales/ro.js +1 -1
- package/lib/locales/ru.js +1 -1
- package/lib/locales/sk.js +1 -1
- package/lib/locales/sl.js +1 -1
- package/lib/locales/sq.js +1 -1
- package/lib/locales/sr-sr.js +1 -1
- package/lib/locales/sr.js +1 -1
- package/lib/locales/sv.js +1 -1
- package/lib/locales/sw.js +1 -1
- package/lib/locales/ta.js +1 -1
- package/lib/locales/th.js +1 -1
- package/lib/locales/tr.js +1 -1
- package/lib/locales/tt.js +1 -1
- package/lib/locales/uk.js +1 -1
- package/lib/locales/ur.js +1 -1
- package/lib/locales/vi.js +1 -1
- package/lib/locales/zh-cn.js +1 -1
- package/lib/locales/zh-hk.js +1 -1
- package/lib/locales/zh-tw.js +1 -1
- package/lib/mesh3d.js +1 -1
- package/lib/ohlc.js +1 -1
- package/lib/parcats.js +1 -1
- package/lib/parcoords.js +1 -1
- package/lib/pie.js +1 -1
- package/lib/pointcloud.js +1 -1
- package/lib/sankey.js +1 -1
- package/lib/scatter.js +1 -1
- package/lib/scatter3d.js +1 -1
- package/lib/scattercarpet.js +1 -1
- package/lib/scattergeo.js +1 -1
- package/lib/scattergl.js +1 -1
- package/lib/scattermapbox.js +1 -1
- package/lib/scatterpolar.js +1 -1
- package/lib/scatterpolargl.js +1 -1
- package/lib/scatterternary.js +1 -1
- package/lib/sort.js +1 -1
- package/lib/splom.js +1 -1
- package/lib/streamtube.js +1 -1
- package/lib/sunburst.js +1 -1
- package/lib/surface.js +1 -1
- package/lib/table.js +1 -1
- package/lib/treemap.js +1 -1
- package/lib/violin.js +1 -1
- package/lib/volume.js +1 -1
- package/lib/waterfall.js +1 -1
- package/package.json +25 -23
- package/src/assets/geo_assets.js +2 -2
- package/src/components/annotations/arrow_paths.js +1 -1
- package/src/components/annotations/attributes.js +2 -2
- package/src/components/annotations/calc_autorange.js +1 -1
- package/src/components/annotations/click.js +1 -1
- package/src/components/annotations/common_defaults.js +1 -1
- package/src/components/annotations/convert_coords.js +1 -1
- package/src/components/annotations/defaults.js +1 -1
- package/src/components/annotations/draw.js +1 -1
- package/src/components/annotations/draw_arrow_head.js +1 -1
- package/src/components/annotations/index.js +1 -1
- package/src/components/annotations3d/attributes.js +1 -1
- package/src/components/annotations3d/convert.js +1 -1
- package/src/components/annotations3d/defaults.js +1 -1
- package/src/components/annotations3d/draw.js +1 -1
- package/src/components/annotations3d/index.js +1 -1
- package/src/components/calendars/calendars.js +1 -1
- package/src/components/calendars/index.js +1 -1
- package/src/components/color/attributes.js +1 -1
- package/src/components/color/index.js +1 -1
- package/src/components/colorbar/attributes.js +1 -1
- package/src/components/colorbar/constants.js +1 -1
- package/src/components/colorbar/defaults.js +1 -1
- package/src/components/colorbar/draw.js +1 -1
- package/src/components/colorbar/has_colorbar.js +1 -1
- package/src/components/colorbar/index.js +1 -1
- package/src/components/colorscale/attributes.js +1 -1
- package/src/components/colorscale/calc.js +1 -1
- package/src/components/colorscale/cross_trace_defaults.js +1 -1
- package/src/components/colorscale/defaults.js +5 -2
- package/src/components/colorscale/helpers.js +1 -1
- package/src/components/colorscale/index.js +1 -1
- package/src/components/colorscale/layout_attributes.js +1 -1
- package/src/components/colorscale/layout_defaults.js +1 -1
- package/src/components/colorscale/scales.js +1 -1
- package/src/components/dragelement/align.js +1 -1
- package/src/components/dragelement/cursor.js +1 -1
- package/src/components/dragelement/index.js +1 -1
- package/src/components/dragelement/unhover.js +1 -1
- package/src/components/drawing/attributes.js +1 -1
- package/src/components/drawing/index.js +40 -15
- package/src/components/drawing/symbol_defs.js +1 -1
- package/src/components/errorbars/attributes.js +1 -1
- package/src/components/errorbars/calc.js +1 -1
- package/src/components/errorbars/compute_error.js +1 -1
- package/src/components/errorbars/defaults.js +1 -1
- package/src/components/errorbars/index.js +1 -1
- package/src/components/errorbars/plot.js +1 -1
- package/src/components/errorbars/style.js +1 -1
- package/src/components/fx/attributes.js +1 -1
- package/src/components/fx/calc.js +1 -1
- package/src/components/fx/click.js +1 -1
- package/src/components/fx/constants.js +1 -1
- package/src/components/fx/defaults.js +1 -1
- package/src/components/fx/helpers.js +1 -1
- package/src/components/fx/hover.js +1 -1
- package/src/components/fx/hoverlabel_defaults.js +1 -1
- package/src/components/fx/index.js +1 -1
- package/src/components/fx/layout_attributes.js +1 -1
- package/src/components/fx/layout_defaults.js +1 -1
- package/src/components/fx/layout_global_defaults.js +1 -1
- package/src/components/grid/index.js +1 -1
- package/src/components/images/attributes.js +1 -1
- package/src/components/images/convert_coords.js +1 -1
- package/src/components/images/defaults.js +1 -1
- package/src/components/images/draw.js +1 -1
- package/src/components/images/index.js +1 -1
- package/src/components/legend/attributes.js +34 -1
- package/src/components/legend/constants.js +3 -1
- package/src/components/legend/defaults.js +15 -2
- package/src/components/legend/draw.js +96 -29
- package/src/components/legend/get_legend_data.js +1 -1
- package/src/components/legend/handle_click.js +7 -4
- package/src/components/legend/helpers.js +1 -1
- package/src/components/legend/index.js +1 -1
- package/src/components/legend/style.js +128 -3
- package/src/components/modebar/buttons.js +43 -5
- package/src/components/modebar/index.js +1 -1
- package/src/components/modebar/manage.js +2 -1
- package/src/components/modebar/modebar.js +1 -1
- package/src/components/rangeselector/attributes.js +1 -1
- package/src/components/rangeselector/constants.js +1 -1
- package/src/components/rangeselector/defaults.js +1 -1
- package/src/components/rangeselector/draw.js +1 -1
- package/src/components/rangeselector/get_update_object.js +1 -1
- package/src/components/rangeselector/index.js +1 -1
- package/src/components/rangeslider/attributes.js +1 -1
- package/src/components/rangeslider/calc_autorange.js +1 -1
- package/src/components/rangeslider/constants.js +1 -1
- package/src/components/rangeslider/defaults.js +1 -1
- package/src/components/rangeslider/draw.js +1 -1
- package/src/components/rangeslider/helpers.js +1 -1
- package/src/components/rangeslider/index.js +1 -1
- package/src/components/rangeslider/oppaxis_attributes.js +1 -1
- package/src/components/shapes/attributes.js +1 -1
- package/src/components/shapes/calc_autorange.js +1 -1
- package/src/components/shapes/constants.js +1 -1
- package/src/components/shapes/defaults.js +1 -1
- package/src/components/shapes/draw.js +1 -1
- package/src/components/shapes/helpers.js +1 -1
- package/src/components/shapes/index.js +1 -1
- package/src/components/sliders/attributes.js +1 -1
- package/src/components/sliders/constants.js +1 -1
- package/src/components/sliders/defaults.js +1 -1
- package/src/components/sliders/draw.js +1 -1
- package/src/components/sliders/index.js +1 -1
- package/src/components/titles/index.js +1 -1
- package/src/components/updatemenus/attributes.js +1 -1
- package/src/components/updatemenus/constants.js +1 -1
- package/src/components/updatemenus/defaults.js +1 -1
- package/src/components/updatemenus/draw.js +1 -1
- package/src/components/updatemenus/index.js +1 -1
- package/src/components/updatemenus/scrollbox.js +1 -1
- package/src/constants/alignment.js +1 -1
- package/src/constants/delta.js +1 -1
- package/src/constants/docs.js +1 -1
- package/src/constants/filter_ops.js +1 -1
- package/src/constants/gl3d_dashes.js +1 -1
- package/src/constants/gl3d_markers.js +1 -1
- package/src/constants/interactions.js +1 -1
- package/src/constants/numerical.js +1 -1
- package/src/constants/xmlns_namespaces.js +1 -1
- package/src/core.js +8 -2
- package/src/fonts/mathjax_config.js +1 -1
- package/src/fonts/ploticon.js +1 -1
- package/src/lib/anchor_utils.js +1 -1
- package/src/lib/angles.js +1 -1
- package/src/lib/array.js +1 -1
- package/src/lib/clean_number.js +1 -1
- package/src/lib/clear_gl_canvases.js +1 -1
- package/src/lib/clear_responsive.js +1 -1
- package/src/lib/coerce.js +1 -1
- package/src/lib/dates.js +1 -1
- package/src/lib/dom.js +1 -1
- package/src/lib/events.js +1 -1
- package/src/lib/extend.js +1 -1
- package/src/lib/filter_unique.js +1 -1
- package/src/lib/filter_visible.js +1 -1
- package/src/lib/geo_location_utils.js +312 -7
- package/src/lib/geojson_utils.js +1 -1
- package/src/lib/geometry2d.js +1 -1
- package/src/lib/gl_format_color.js +1 -1
- package/src/lib/gup.js +1 -1
- package/src/lib/identity.js +1 -1
- package/src/lib/index.js +57 -31
- package/src/lib/is_plain_object.js +1 -1
- package/src/lib/keyed_container.js +1 -1
- package/src/lib/localize.js +1 -1
- package/src/lib/loggers.js +36 -10
- package/src/lib/make_trace_groups.js +1 -1
- package/src/lib/matrix.js +1 -1
- package/src/lib/mod.js +1 -1
- package/src/lib/nested_property.js +1 -1
- package/src/lib/noop.js +1 -1
- package/src/lib/notifier.js +13 -7
- package/src/lib/override_cursor.js +1 -1
- package/src/lib/polygon.js +1 -1
- package/src/lib/prepare_regl.js +1 -1
- package/src/lib/push_unique.js +1 -1
- package/src/lib/queue.js +1 -1
- package/src/lib/regex.js +1 -1
- package/src/lib/relative_attr.js +1 -1
- package/src/lib/relink_private.js +1 -1
- package/src/lib/search.js +1 -1
- package/src/lib/setcursor.js +1 -1
- package/src/lib/show_no_webgl_msg.js +1 -1
- package/src/lib/stats.js +1 -1
- package/src/lib/str2rgbarray.js +1 -1
- package/src/lib/svg_text_utils.js +1 -1
- package/src/lib/throttle.js +1 -1
- package/src/lib/to_log_range.js +1 -1
- package/src/lib/topojson_utils.js +1 -1
- package/src/locale-en-us.js +1 -1
- package/src/locale-en.js +1 -1
- package/src/plot_api/container_array_match.js +1 -1
- package/src/plot_api/edit_types.js +1 -1
- package/src/plot_api/helpers.js +1 -1
- package/src/plot_api/index.js +1 -1
- package/src/plot_api/manage_arrays.js +1 -1
- package/src/plot_api/plot_api.js +2 -2
- package/src/plot_api/plot_config.js +19 -2
- package/src/plot_api/plot_schema.js +1 -1
- package/src/plot_api/plot_template.js +1 -1
- package/src/plot_api/subroutines.js +7 -1
- package/src/plot_api/template_api.js +1 -1
- package/src/plot_api/to_image.js +1 -1
- package/src/plot_api/validate.js +5 -4
- package/src/plots/animation_attributes.js +1 -1
- package/src/plots/array_container_defaults.js +1 -1
- package/src/plots/attributes.js +1 -1
- package/src/plots/cartesian/attributes.js +1 -1
- package/src/plots/cartesian/autorange.js +1 -1
- package/src/plots/cartesian/axes.js +7 -3
- package/src/plots/cartesian/axis_autotype.js +1 -1
- package/src/plots/cartesian/axis_defaults.js +1 -1
- package/src/plots/cartesian/axis_ids.js +1 -1
- package/src/plots/cartesian/category_order_defaults.js +1 -1
- package/src/plots/cartesian/clean_ticks.js +1 -1
- package/src/plots/cartesian/constants.js +2 -3
- package/src/plots/cartesian/constraints.js +1 -1
- package/src/plots/cartesian/dragbox.js +1 -1
- package/src/plots/cartesian/graph_interact.js +1 -1
- package/src/plots/cartesian/include_components.js +1 -1
- package/src/plots/cartesian/index.js +1 -1
- package/src/plots/cartesian/layout_attributes.js +1 -1
- package/src/plots/cartesian/layout_defaults.js +113 -28
- package/src/plots/cartesian/line_grid_defaults.js +1 -1
- package/src/plots/cartesian/position_defaults.js +1 -1
- package/src/plots/cartesian/scale_zoom.js +1 -1
- package/src/plots/cartesian/select.js +1 -1
- package/src/plots/cartesian/set_convert.js +1 -1
- package/src/plots/cartesian/tick_label_defaults.js +1 -1
- package/src/plots/cartesian/tick_mark_defaults.js +1 -1
- package/src/plots/cartesian/tick_value_defaults.js +1 -1
- package/src/plots/cartesian/transition_axes.js +1 -1
- package/src/plots/cartesian/type_defaults.js +11 -3
- package/src/plots/command.js +1 -1
- package/src/plots/domain.js +1 -1
- package/src/plots/font_attributes.js +1 -1
- package/src/plots/frame_attributes.js +1 -1
- package/src/plots/geo/constants.js +1 -1
- package/src/plots/geo/geo.js +114 -51
- package/src/plots/geo/index.js +1 -1
- package/src/plots/geo/layout_attributes.js +34 -1
- package/src/plots/geo/layout_defaults.js +80 -15
- package/src/plots/geo/projections.js +1 -1
- package/src/plots/geo/zoom.js +2 -2
- package/src/plots/get_data.js +1 -1
- package/src/plots/gl2d/camera.js +1 -1
- package/src/plots/gl2d/convert.js +1 -1
- package/src/plots/gl2d/index.js +1 -1
- package/src/plots/gl2d/scene2d.js +1 -1
- package/src/plots/gl3d/index.js +1 -1
- package/src/plots/gl3d/layout/attributes.js +1 -1
- package/src/plots/gl3d/layout/axis_attributes.js +1 -1
- package/src/plots/gl3d/layout/axis_defaults.js +1 -1
- package/src/plots/gl3d/layout/convert.js +1 -1
- package/src/plots/gl3d/layout/defaults.js +1 -1
- package/src/plots/gl3d/layout/layout_attributes.js +1 -1
- package/src/plots/gl3d/layout/spikes.js +1 -1
- package/src/plots/gl3d/layout/tick_marks.js +1 -1
- package/src/plots/gl3d/project.js +1 -1
- package/src/plots/gl3d/scene.js +362 -324
- package/src/plots/gl3d/zip3.js +1 -1
- package/src/plots/layout_attributes.js +33 -3
- package/src/plots/mapbox/constants.js +1 -1
- package/src/plots/mapbox/convert_text_opts.js +1 -1
- package/src/plots/mapbox/index.js +2 -1
- package/src/plots/mapbox/layers.js +28 -1
- package/src/plots/mapbox/layout_attributes.js +1 -1
- package/src/plots/mapbox/layout_defaults.js +1 -1
- package/src/plots/mapbox/mapbox.js +46 -54
- package/src/plots/pad_attributes.js +1 -1
- package/src/plots/plots.js +55 -14
- package/src/plots/polar/constants.js +1 -1
- package/src/plots/polar/helpers.js +1 -1
- package/src/plots/polar/index.js +1 -1
- package/src/plots/polar/layout_attributes.js +1 -1
- package/src/plots/polar/layout_defaults.js +1 -1
- package/src/plots/polar/legacy/area_attributes.js +1 -1
- package/src/plots/polar/legacy/axis_attributes.js +1 -1
- package/src/plots/polar/legacy/index.js +1 -1
- package/src/plots/polar/legacy/micropolar.js +1 -1
- package/src/plots/polar/legacy/micropolar_manager.js +1 -1
- package/src/plots/polar/legacy/undo_manager.js +1 -1
- package/src/plots/polar/polar.js +1 -1
- package/src/plots/polar/set_convert.js +1 -1
- package/src/plots/subplot_defaults.js +1 -1
- package/src/plots/template_attributes.js +1 -1
- package/src/plots/ternary/index.js +1 -1
- package/src/plots/ternary/layout_attributes.js +1 -1
- package/src/plots/ternary/layout_defaults.js +1 -1
- package/src/plots/ternary/ternary.js +1 -1
- package/src/registry.js +1 -1
- package/src/snapshot/cloneplot.js +1 -1
- package/src/snapshot/download.js +1 -1
- package/src/snapshot/filesaver.js +1 -1
- package/src/snapshot/helpers.js +1 -1
- package/src/snapshot/index.js +1 -1
- package/src/snapshot/svgtoimg.js +1 -1
- package/src/snapshot/toimage.js +1 -1
- package/src/snapshot/tosvg.js +21 -13
- package/src/traces/bar/arrays_to_calcdata.js +1 -1
- package/src/traces/bar/attributes.js +1 -1
- package/src/traces/bar/calc.js +1 -1
- package/src/traces/bar/constants.js +1 -1
- package/src/traces/bar/cross_trace_calc.js +1 -1
- package/src/traces/bar/defaults.js +10 -2
- package/src/traces/bar/event_data.js +1 -1
- package/src/traces/bar/helpers.js +1 -1
- package/src/traces/bar/hover.js +7 -2
- package/src/traces/bar/index.js +1 -1
- package/src/traces/bar/layout_attributes.js +1 -1
- package/src/traces/bar/layout_defaults.js +1 -1
- package/src/traces/bar/plot.js +139 -91
- package/src/traces/bar/select.js +1 -1
- package/src/traces/bar/sieve.js +1 -1
- package/src/traces/bar/style.js +9 -4
- package/src/traces/bar/style_defaults.js +1 -1
- package/src/traces/bar/uniform_text.js +84 -0
- package/src/traces/barpolar/attributes.js +1 -1
- package/src/traces/barpolar/calc.js +1 -1
- package/src/traces/barpolar/defaults.js +1 -1
- package/src/traces/barpolar/hover.js +1 -1
- package/src/traces/barpolar/index.js +1 -1
- package/src/traces/barpolar/layout_attributes.js +1 -1
- package/src/traces/barpolar/layout_defaults.js +1 -1
- package/src/traces/barpolar/plot.js +1 -1
- package/src/traces/box/attributes.js +204 -42
- package/src/traces/box/calc.js +286 -92
- package/src/traces/box/cross_trace_calc.js +1 -1
- package/src/traces/box/defaults.js +186 -22
- package/src/traces/box/event_data.js +1 -1
- package/src/traces/box/hover.js +1 -1
- package/src/traces/box/index.js +25 -12
- package/src/traces/box/layout_attributes.js +1 -1
- package/src/traces/box/layout_defaults.js +1 -1
- package/src/traces/box/plot.js +1 -1
- package/src/traces/box/select.js +1 -1
- package/src/traces/box/style.js +1 -1
- package/src/traces/candlestick/attributes.js +1 -1
- package/src/traces/candlestick/calc.js +1 -1
- package/src/traces/candlestick/defaults.js +1 -1
- package/src/traces/candlestick/index.js +1 -1
- package/src/traces/carpet/ab_defaults.js +1 -1
- package/src/traces/carpet/array_minmax.js +1 -1
- package/src/traces/carpet/attributes.js +1 -1
- package/src/traces/carpet/axis_aligned_line.js +1 -1
- package/src/traces/carpet/axis_attributes.js +1 -1
- package/src/traces/carpet/axis_defaults.js +1 -1
- package/src/traces/carpet/calc.js +1 -1
- package/src/traces/carpet/calc_clippath.js +1 -1
- package/src/traces/carpet/calc_gridlines.js +1 -1
- package/src/traces/carpet/calc_labels.js +1 -1
- package/src/traces/carpet/catmull_rom.js +1 -1
- package/src/traces/carpet/cheater_basis.js +1 -1
- package/src/traces/carpet/compute_control_points.js +1 -1
- package/src/traces/carpet/constants.js +1 -1
- package/src/traces/carpet/create_i_derivative_evaluator.js +1 -1
- package/src/traces/carpet/create_j_derivative_evaluator.js +1 -1
- package/src/traces/carpet/create_spline_evaluator.js +1 -1
- package/src/traces/carpet/defaults.js +1 -1
- package/src/traces/carpet/index.js +1 -1
- package/src/traces/carpet/lookup_carpetid.js +1 -1
- package/src/traces/carpet/makepath.js +1 -1
- package/src/traces/carpet/map_1d_array.js +1 -1
- package/src/traces/carpet/orient_text.js +1 -1
- package/src/traces/carpet/plot.js +1 -1
- package/src/traces/carpet/set_convert.js +1 -1
- package/src/traces/carpet/smooth_fill_2d_array.js +1 -1
- package/src/traces/carpet/smooth_fill_array.js +1 -1
- package/src/traces/carpet/xy_defaults.js +1 -1
- package/src/traces/choropleth/attributes.js +18 -2
- package/src/traces/choropleth/calc.js +1 -1
- package/src/traces/choropleth/defaults.js +13 -3
- package/src/traces/choropleth/event_data.js +4 -2
- package/src/traces/choropleth/hover.js +1 -1
- package/src/traces/choropleth/index.js +3 -2
- package/src/traces/choropleth/plot.js +39 -122
- package/src/traces/choropleth/select.js +1 -1
- package/src/traces/choropleth/style.js +1 -1
- package/src/traces/choroplethmapbox/attributes.js +16 -9
- package/src/traces/choroplethmapbox/convert.js +17 -106
- package/src/traces/choroplethmapbox/defaults.js +3 -1
- package/src/traces/choroplethmapbox/index.js +2 -2
- package/src/traces/choroplethmapbox/plot.js +1 -1
- package/src/traces/cone/attributes.js +4 -2
- package/src/traces/cone/calc.js +1 -1
- package/src/traces/cone/convert.js +1 -1
- package/src/traces/cone/defaults.js +1 -1
- package/src/traces/cone/index.js +2 -2
- package/src/traces/contour/attributes.js +1 -1
- package/src/traces/contour/calc.js +1 -1
- package/src/traces/contour/close_boundaries.js +1 -1
- package/src/traces/contour/colorbar.js +6 -4
- package/src/traces/contour/constants.js +1 -1
- package/src/traces/contour/constraint_defaults.js +1 -1
- package/src/traces/contour/constraint_mapping.js +1 -1
- package/src/traces/contour/contours_defaults.js +1 -1
- package/src/traces/contour/convert_to_constraints.js +1 -1
- package/src/traces/contour/defaults.js +1 -1
- package/src/traces/contour/empty_pathinfo.js +1 -1
- package/src/traces/contour/end_plus.js +1 -1
- package/src/traces/contour/find_all_paths.js +1 -1
- package/src/traces/contour/hover.js +1 -1
- package/src/traces/contour/index.js +1 -1
- package/src/traces/contour/label_defaults.js +1 -1
- package/src/traces/contour/make_color_map.js +1 -1
- package/src/traces/contour/make_crossings.js +1 -1
- package/src/traces/contour/plot.js +1 -1
- package/src/traces/contour/set_contours.js +1 -1
- package/src/traces/contour/style.js +1 -1
- package/src/traces/contour/style_defaults.js +1 -1
- package/src/traces/contourcarpet/attributes.js +1 -1
- package/src/traces/contourcarpet/calc.js +1 -1
- package/src/traces/contourcarpet/defaults.js +1 -1
- package/src/traces/contourcarpet/index.js +1 -1
- package/src/traces/contourcarpet/plot.js +1 -1
- package/src/traces/contourgl/convert.js +1 -1
- package/src/traces/contourgl/index.js +1 -1
- package/src/traces/densitymapbox/attributes.js +3 -2
- package/src/traces/densitymapbox/calc.js +1 -1
- package/src/traces/densitymapbox/convert.js +1 -1
- package/src/traces/densitymapbox/defaults.js +1 -1
- package/src/traces/densitymapbox/event_data.js +1 -1
- package/src/traces/densitymapbox/hover.js +1 -1
- package/src/traces/densitymapbox/index.js +2 -2
- package/src/traces/densitymapbox/plot.js +1 -1
- package/src/traces/funnel/arrays_to_calcdata.js +1 -1
- package/src/traces/funnel/attributes.js +1 -1
- package/src/traces/funnel/calc.js +1 -1
- package/src/traces/funnel/constants.js +1 -1
- package/src/traces/funnel/cross_trace_calc.js +1 -1
- package/src/traces/funnel/defaults.js +1 -1
- package/src/traces/funnel/event_data.js +1 -1
- package/src/traces/funnel/hover.js +1 -1
- package/src/traces/funnel/index.js +1 -1
- package/src/traces/funnel/layout_attributes.js +1 -1
- package/src/traces/funnel/layout_defaults.js +1 -1
- package/src/traces/funnel/plot.js +6 -3
- package/src/traces/funnel/style.js +5 -3
- package/src/traces/funnelarea/attributes.js +1 -1
- package/src/traces/funnelarea/base_plot.js +1 -1
- package/src/traces/funnelarea/calc.js +1 -1
- package/src/traces/funnelarea/defaults.js +11 -9
- package/src/traces/funnelarea/index.js +1 -1
- package/src/traces/funnelarea/layout_attributes.js +1 -1
- package/src/traces/funnelarea/layout_defaults.js +1 -1
- package/src/traces/funnelarea/plot.js +23 -14
- package/src/traces/funnelarea/style.js +6 -2
- package/src/traces/heatmap/attributes.js +4 -2
- package/src/traces/heatmap/calc.js +1 -1
- package/src/traces/heatmap/clean_2d_array.js +1 -1
- package/src/traces/heatmap/colorbar.js +1 -1
- package/src/traces/heatmap/convert_column_xyz.js +6 -1
- package/src/traces/heatmap/defaults.js +1 -1
- package/src/traces/heatmap/find_empties.js +1 -1
- package/src/traces/heatmap/hover.js +2 -2
- package/src/traces/heatmap/index.js +2 -2
- package/src/traces/heatmap/interp2d.js +1 -1
- package/src/traces/heatmap/make_bound_array.js +1 -1
- package/src/traces/heatmap/plot.js +1 -1
- package/src/traces/heatmap/style.js +1 -1
- package/src/traces/heatmap/style_defaults.js +1 -1
- package/src/traces/heatmap/xyz_defaults.js +1 -1
- package/src/traces/heatmapgl/attributes.js +1 -1
- package/src/traces/heatmapgl/convert.js +1 -1
- package/src/traces/heatmapgl/index.js +1 -1
- package/src/traces/histogram/attributes.js +1 -1
- package/src/traces/histogram/average.js +1 -1
- package/src/traces/histogram/bin_attributes.js +1 -1
- package/src/traces/histogram/bin_functions.js +1 -1
- package/src/traces/histogram/bin_label_vals.js +1 -1
- package/src/traces/histogram/calc.js +1 -1
- package/src/traces/histogram/constants.js +1 -1
- package/src/traces/histogram/cross_trace_defaults.js +2 -2
- package/src/traces/histogram/defaults.js +1 -1
- package/src/traces/histogram/event_data.js +1 -1
- package/src/traces/histogram/hover.js +1 -1
- package/src/traces/histogram/index.js +1 -1
- package/src/traces/histogram/norm_functions.js +1 -1
- package/src/traces/histogram2d/attributes.js +4 -2
- package/src/traces/histogram2d/calc.js +1 -1
- package/src/traces/histogram2d/defaults.js +1 -1
- package/src/traces/histogram2d/hover.js +1 -1
- package/src/traces/histogram2d/index.js +2 -3
- package/src/traces/histogram2d/sample_defaults.js +1 -1
- package/src/traces/histogram2dcontour/attributes.js +1 -1
- package/src/traces/histogram2dcontour/defaults.js +1 -1
- package/src/traces/histogram2dcontour/index.js +1 -1
- package/src/traces/image/attributes.js +1 -1
- package/src/traces/image/calc.js +1 -1
- package/src/traces/image/constants.js +1 -1
- package/src/traces/image/defaults.js +1 -1
- package/src/traces/image/event_data.js +1 -1
- package/src/traces/image/hover.js +1 -1
- package/src/traces/image/index.js +1 -1
- package/src/traces/image/plot.js +1 -1
- package/src/traces/image/style.js +1 -1
- package/src/traces/indicator/attributes.js +1 -1
- package/src/traces/indicator/base_plot.js +1 -1
- package/src/traces/indicator/calc.js +1 -1
- package/src/traces/indicator/constants.js +1 -1
- package/src/traces/indicator/defaults.js +1 -1
- package/src/traces/indicator/index.js +1 -1
- package/src/traces/indicator/plot.js +1 -1
- package/src/traces/isosurface/attributes.js +3 -2
- package/src/traces/isosurface/calc.js +23 -6
- package/src/traces/isosurface/convert.js +54 -44
- package/src/traces/isosurface/defaults.js +1 -1
- package/src/traces/isosurface/index.js +2 -2
- package/src/traces/mesh3d/attributes.js +16 -4
- package/src/traces/mesh3d/calc.js +1 -1
- package/src/traces/mesh3d/convert.js +13 -8
- package/src/traces/mesh3d/defaults.js +2 -1
- package/src/traces/mesh3d/index.js +2 -2
- package/src/traces/ohlc/attributes.js +1 -1
- package/src/traces/ohlc/calc.js +1 -1
- package/src/traces/ohlc/defaults.js +1 -1
- package/src/traces/ohlc/hover.js +1 -1
- package/src/traces/ohlc/index.js +1 -1
- package/src/traces/ohlc/ohlc_defaults.js +1 -1
- package/src/traces/ohlc/plot.js +1 -1
- package/src/traces/ohlc/select.js +1 -1
- package/src/traces/ohlc/style.js +1 -1
- package/src/traces/parcats/attributes.js +1 -1
- package/src/traces/parcats/base_plot.js +1 -1
- package/src/traces/parcats/calc.js +1 -1
- package/src/traces/parcats/defaults.js +1 -1
- package/src/traces/parcats/index.js +1 -1
- package/src/traces/parcats/parcats.js +1 -1
- package/src/traces/parcats/plot.js +1 -1
- package/src/traces/parcoords/attributes.js +1 -1
- package/src/traces/parcoords/axisbrush.js +1 -1
- package/src/traces/parcoords/base_plot.js +1 -1
- package/src/traces/parcoords/calc.js +1 -1
- package/src/traces/parcoords/constants.js +1 -1
- package/src/traces/parcoords/defaults.js +1 -1
- package/src/traces/parcoords/helpers.js +1 -1
- package/src/traces/parcoords/index.js +1 -1
- package/src/traces/parcoords/lines.js +1 -1
- package/src/traces/parcoords/merge_length.js +1 -1
- package/src/traces/parcoords/parcoords.js +1 -1
- package/src/traces/parcoords/plot.js +1 -1
- package/src/traces/pie/attributes.js +17 -1
- package/src/traces/pie/base_plot.js +1 -1
- package/src/traces/pie/calc.js +7 -8
- package/src/traces/pie/defaults.js +50 -10
- package/src/traces/pie/event_data.js +1 -1
- package/src/traces/pie/helpers.js +1 -1
- package/src/traces/pie/index.js +2 -2
- package/src/traces/pie/layout_attributes.js +1 -1
- package/src/traces/pie/layout_defaults.js +1 -1
- package/src/traces/pie/plot.js +196 -72
- package/src/traces/pie/style.js +6 -2
- package/src/traces/pie/style_one.js +1 -1
- package/src/traces/pointcloud/attributes.js +1 -1
- package/src/traces/pointcloud/convert.js +1 -1
- package/src/traces/pointcloud/defaults.js +1 -1
- package/src/traces/pointcloud/index.js +1 -1
- package/src/traces/sankey/attributes.js +1 -1
- package/src/traces/sankey/base_plot.js +1 -1
- package/src/traces/sankey/calc.js +1 -1
- package/src/traces/sankey/constants.js +1 -1
- package/src/traces/sankey/defaults.js +1 -1
- package/src/traces/sankey/index.js +1 -1
- package/src/traces/sankey/plot.js +10 -6
- package/src/traces/sankey/render.js +1 -1
- package/src/traces/sankey/select.js +1 -1
- package/src/traces/scatter/arrays_to_calcdata.js +1 -1
- package/src/traces/scatter/attributes.js +1 -1
- package/src/traces/scatter/calc.js +1 -1
- package/src/traces/scatter/calc_selection.js +1 -1
- package/src/traces/scatter/colorscale_calc.js +1 -1
- package/src/traces/scatter/constants.js +1 -1
- package/src/traces/scatter/cross_trace_calc.js +1 -1
- package/src/traces/scatter/cross_trace_defaults.js +1 -1
- package/src/traces/scatter/defaults.js +1 -1
- package/src/traces/scatter/fillcolor_defaults.js +1 -1
- package/src/traces/scatter/format_labels.js +1 -1
- package/src/traces/scatter/get_trace_color.js +1 -1
- package/src/traces/scatter/hover.js +1 -1
- package/src/traces/scatter/index.js +1 -1
- package/src/traces/scatter/line_defaults.js +1 -1
- package/src/traces/scatter/line_points.js +1 -1
- package/src/traces/scatter/line_shape_defaults.js +1 -1
- package/src/traces/scatter/link_traces.js +1 -1
- package/src/traces/scatter/make_bubble_size_func.js +1 -1
- package/src/traces/scatter/marker_colorbar.js +1 -1
- package/src/traces/scatter/marker_defaults.js +1 -1
- package/src/traces/scatter/plot.js +1 -1
- package/src/traces/scatter/select.js +1 -1
- package/src/traces/scatter/stack_defaults.js +1 -1
- package/src/traces/scatter/style.js +1 -1
- package/src/traces/scatter/subtypes.js +1 -1
- package/src/traces/scatter/text_defaults.js +1 -1
- package/src/traces/scatter/xy_defaults.js +1 -1
- package/src/traces/scatter3d/attributes.js +1 -1
- package/src/traces/scatter3d/calc.js +1 -1
- package/src/traces/scatter3d/calc_errors.js +1 -1
- package/src/traces/scatter3d/convert.js +1 -1
- package/src/traces/scatter3d/defaults.js +1 -1
- package/src/traces/scatter3d/index.js +1 -1
- package/src/traces/scattercarpet/attributes.js +1 -1
- package/src/traces/scattercarpet/calc.js +1 -1
- package/src/traces/scattercarpet/defaults.js +1 -1
- package/src/traces/scattercarpet/event_data.js +1 -1
- package/src/traces/scattercarpet/format_labels.js +1 -1
- package/src/traces/scattercarpet/hover.js +1 -1
- package/src/traces/scattercarpet/index.js +1 -1
- package/src/traces/scattercarpet/plot.js +1 -1
- package/src/traces/scattergeo/attributes.js +35 -3
- package/src/traces/scattergeo/calc.js +13 -2
- package/src/traces/scattergeo/defaults.js +26 -24
- package/src/traces/scattergeo/event_data.js +8 -2
- package/src/traces/scattergeo/format_labels.js +1 -1
- package/src/traces/scattergeo/hover.js +1 -1
- package/src/traces/scattergeo/index.js +3 -2
- package/src/traces/scattergeo/plot.js +55 -20
- package/src/traces/scattergeo/select.js +1 -1
- package/src/traces/scattergeo/style.js +1 -1
- package/src/traces/scattergl/attributes.js +1 -1
- package/src/traces/scattergl/calc.js +1 -1
- package/src/traces/scattergl/constants.js +1 -1
- package/src/traces/scattergl/convert.js +14 -10
- package/src/traces/scattergl/defaults.js +3 -2
- package/src/traces/scattergl/edit_style.js +1 -1
- package/src/traces/scattergl/format_labels.js +1 -1
- package/src/traces/scattergl/helpers.js +23 -0
- package/src/traces/scattergl/hover.js +5 -5
- package/src/traces/scattergl/index.js +1 -1
- package/src/traces/scattergl/plot.js +1 -1
- package/src/traces/scattergl/scene_update.js +1 -1
- package/src/traces/scattergl/select.js +1 -1
- package/src/traces/scattermapbox/attributes.js +1 -1
- package/src/traces/scattermapbox/convert.js +1 -1
- package/src/traces/scattermapbox/defaults.js +1 -1
- package/src/traces/scattermapbox/event_data.js +1 -1
- package/src/traces/scattermapbox/format_labels.js +1 -1
- package/src/traces/scattermapbox/hover.js +1 -1
- package/src/traces/scattermapbox/index.js +1 -1
- package/src/traces/scattermapbox/plot.js +1 -1
- package/src/traces/scattermapbox/select.js +1 -1
- package/src/traces/scatterpolar/attributes.js +1 -1
- package/src/traces/scatterpolar/calc.js +1 -1
- package/src/traces/scatterpolar/defaults.js +1 -1
- package/src/traces/scatterpolar/format_labels.js +1 -1
- package/src/traces/scatterpolar/hover.js +1 -1
- package/src/traces/scatterpolar/index.js +1 -1
- package/src/traces/scatterpolar/plot.js +1 -1
- package/src/traces/scatterpolargl/attributes.js +1 -1
- package/src/traces/scatterpolargl/calc.js +1 -1
- package/src/traces/scatterpolargl/defaults.js +1 -1
- package/src/traces/scatterpolargl/format_labels.js +1 -1
- package/src/traces/scatterpolargl/hover.js +1 -1
- package/src/traces/scatterpolargl/index.js +1 -1
- package/src/traces/scatterpolargl/plot.js +1 -1
- package/src/traces/scatterternary/attributes.js +1 -1
- package/src/traces/scatterternary/calc.js +1 -1
- package/src/traces/scatterternary/defaults.js +1 -1
- package/src/traces/scatterternary/event_data.js +1 -1
- package/src/traces/scatterternary/format_labels.js +1 -1
- package/src/traces/scatterternary/hover.js +1 -1
- package/src/traces/scatterternary/index.js +1 -1
- package/src/traces/scatterternary/plot.js +1 -1
- package/src/traces/splom/attributes.js +1 -1
- package/src/traces/splom/base_plot.js +1 -1
- package/src/traces/splom/calc.js +1 -1
- package/src/traces/splom/defaults.js +3 -3
- package/src/traces/splom/edit_style.js +1 -1
- package/src/traces/splom/helpers.js +1 -1
- package/src/traces/splom/hover.js +1 -1
- package/src/traces/splom/index.js +1 -1
- package/src/traces/splom/plot.js +1 -1
- package/src/traces/splom/scene_update.js +1 -1
- package/src/traces/splom/select.js +1 -1
- package/src/traces/streamtube/attributes.js +3 -2
- package/src/traces/streamtube/calc.js +112 -54
- package/src/traces/streamtube/convert.js +7 -7
- package/src/traces/streamtube/defaults.js +1 -1
- package/src/traces/streamtube/index.js +3 -3
- package/src/traces/sunburst/attributes.js +11 -2
- package/src/traces/sunburst/base_plot.js +1 -1
- package/src/traces/sunburst/calc.js +4 -2
- package/src/traces/sunburst/constants.js +1 -1
- package/src/traces/sunburst/defaults.js +7 -2
- package/src/traces/sunburst/fx.js +24 -23
- package/src/traces/sunburst/helpers.js +16 -9
- package/src/traces/sunburst/index.js +1 -1
- package/src/traces/sunburst/layout_attributes.js +1 -1
- package/src/traces/sunburst/layout_defaults.js +1 -1
- package/src/traces/sunburst/plot.js +52 -25
- package/src/traces/sunburst/style.js +6 -2
- package/src/traces/surface/attributes.js +3 -2
- package/src/traces/surface/calc.js +1 -1
- package/src/traces/surface/convert.js +1 -1
- package/src/traces/surface/defaults.js +1 -1
- package/src/traces/surface/index.js +2 -2
- package/src/traces/table/attributes.js +1 -1
- package/src/traces/table/base_plot.js +1 -1
- package/src/traces/table/calc.js +1 -1
- package/src/traces/table/constants.js +1 -1
- package/src/traces/table/data_preparation_helper.js +1 -1
- package/src/traces/table/data_split_helpers.js +1 -1
- package/src/traces/table/defaults.js +1 -1
- package/src/traces/table/index.js +1 -1
- package/src/traces/table/plot.js +1 -1
- package/src/traces/treemap/attributes.js +10 -2
- package/src/traces/treemap/base_plot.js +1 -1
- package/src/traces/treemap/calc.js +1 -1
- package/src/traces/treemap/constants.js +1 -1
- package/src/traces/treemap/defaults.js +8 -5
- package/src/traces/treemap/draw_ancestors.js +9 -11
- package/src/traces/treemap/draw_descendants.js +6 -2
- package/src/traces/treemap/index.js +1 -1
- package/src/traces/treemap/layout_attributes.js +1 -1
- package/src/traces/treemap/layout_defaults.js +1 -1
- package/src/traces/treemap/partition.js +1 -1
- package/src/traces/treemap/plot.js +62 -47
- package/src/traces/treemap/style.js +6 -2
- package/src/traces/violin/attributes.js +5 -2
- package/src/traces/violin/calc.js +1 -1
- package/src/traces/violin/cross_trace_calc.js +1 -1
- package/src/traces/violin/defaults.js +1 -1
- package/src/traces/violin/helpers.js +1 -1
- package/src/traces/violin/hover.js +1 -1
- package/src/traces/violin/index.js +1 -1
- package/src/traces/violin/layout_attributes.js +1 -1
- package/src/traces/violin/layout_defaults.js +1 -1
- package/src/traces/violin/plot.js +1 -1
- package/src/traces/violin/style.js +1 -1
- package/src/traces/volume/attributes.js +3 -2
- package/src/traces/volume/convert.js +13 -13
- package/src/traces/volume/defaults.js +1 -1
- package/src/traces/volume/index.js +2 -2
- package/src/traces/waterfall/attributes.js +1 -1
- package/src/traces/waterfall/calc.js +1 -1
- package/src/traces/waterfall/constants.js +1 -1
- package/src/traces/waterfall/cross_trace_calc.js +1 -1
- package/src/traces/waterfall/defaults.js +1 -1
- package/src/traces/waterfall/event_data.js +1 -1
- package/src/traces/waterfall/hover.js +1 -1
- package/src/traces/waterfall/index.js +1 -1
- package/src/traces/waterfall/layout_attributes.js +1 -1
- package/src/traces/waterfall/layout_defaults.js +1 -1
- package/src/traces/waterfall/plot.js +6 -3
- package/src/traces/waterfall/style.js +5 -3
- package/src/transforms/aggregate.js +1 -1
- package/src/transforms/filter.js +1 -1
- package/src/transforms/groupby.js +2 -2
- package/src/transforms/helpers.js +1 -1
- package/src/transforms/sort.js +1 -1
- package/tasks/noci_test.sh +1 -1
- package/tasks/test_syntax.js +1 -1
- package/tasks/util/constants.js +1 -1
- package/tasks/util/wrap_locale.js +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright 2012-
|
|
2
|
+
* Copyright 2012-2020, Plotly, Inc.
|
|
3
3
|
* All rights reserved.
|
|
4
4
|
*
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
@@ -193,5 +193,38 @@ module.exports = {
|
|
|
193
193
|
'Sets the vertical alignment of the symbols with respect to their associated text.',
|
|
194
194
|
].join(' ')
|
|
195
195
|
},
|
|
196
|
+
title: {
|
|
197
|
+
text: {
|
|
198
|
+
valType: 'string',
|
|
199
|
+
dflt: '',
|
|
200
|
+
role: 'info',
|
|
201
|
+
editType: 'legend',
|
|
202
|
+
description: [
|
|
203
|
+
'Sets the title of the legend.'
|
|
204
|
+
].join(' ')
|
|
205
|
+
},
|
|
206
|
+
font: fontAttrs({
|
|
207
|
+
editType: 'legend',
|
|
208
|
+
description: [
|
|
209
|
+
'Sets this legend\'s title font.'
|
|
210
|
+
].join(' '),
|
|
211
|
+
}),
|
|
212
|
+
side: {
|
|
213
|
+
valType: 'enumerated',
|
|
214
|
+
values: ['top', 'left', 'top left'],
|
|
215
|
+
role: 'style',
|
|
216
|
+
editType: 'legend',
|
|
217
|
+
description: [
|
|
218
|
+
'Determines the location of legend\'s title',
|
|
219
|
+
'with respect to the legend items.',
|
|
220
|
+
'Defaulted to *top* with `orientation` is *h*.',
|
|
221
|
+
'Defaulted to *left* with `orientation` is *v*.',
|
|
222
|
+
'The *top left* options could be used to expand',
|
|
223
|
+
'legend area in both x and y sides.'
|
|
224
|
+
].join(' ')
|
|
225
|
+
},
|
|
226
|
+
editType: 'legend',
|
|
227
|
+
},
|
|
228
|
+
|
|
196
229
|
editType: 'legend'
|
|
197
230
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright 2012-
|
|
2
|
+
* Copyright 2012-2020, Plotly, Inc.
|
|
3
3
|
* All rights reserved.
|
|
4
4
|
*
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
@@ -15,6 +15,8 @@ module.exports = {
|
|
|
15
15
|
scrollBarMargin: 4,
|
|
16
16
|
scrollBarEnterAttrs: {rx: 20, ry: 3, width: 0, height: 0},
|
|
17
17
|
|
|
18
|
+
// number of px between legend title and (left) side of legend (always in x direction and from inner border)
|
|
19
|
+
titlePad: 2,
|
|
18
20
|
// number of px between legend symbol and legend text (always in x direction)
|
|
19
21
|
textGap: 40,
|
|
20
22
|
// number of px between each legend item (x and/or y direction)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright 2012-
|
|
2
|
+
* Copyright 2012-2020, Plotly, Inc.
|
|
3
3
|
* All rights reserved.
|
|
4
4
|
*
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
@@ -33,7 +33,14 @@ module.exports = function legendDefaults(layoutIn, layoutOut, fullData) {
|
|
|
33
33
|
// *would* be shown by default, toward the two traces you need to
|
|
34
34
|
// ensure the legend is shown by default, because this can still help
|
|
35
35
|
// disambiguate.
|
|
36
|
-
if(trace.showlegend ||
|
|
36
|
+
if(trace.showlegend || (
|
|
37
|
+
trace._dfltShowLegend && !(
|
|
38
|
+
trace._module &&
|
|
39
|
+
trace._module.attributes &&
|
|
40
|
+
trace._module.attributes.showlegend &&
|
|
41
|
+
trace._module.attributes.showlegend.dflt === false
|
|
42
|
+
)
|
|
43
|
+
)) {
|
|
37
44
|
legendTraceCount++;
|
|
38
45
|
if(trace.showlegend) {
|
|
39
46
|
legendReallyHasATrace = true;
|
|
@@ -116,4 +123,10 @@ module.exports = function legendDefaults(layoutIn, layoutOut, fullData) {
|
|
|
116
123
|
coerce('yanchor', defaultYAnchor);
|
|
117
124
|
coerce('valign');
|
|
118
125
|
Lib.noneOrAll(containerIn, containerOut, ['x', 'y']);
|
|
126
|
+
|
|
127
|
+
var titleText = coerce('title.text');
|
|
128
|
+
if(titleText) {
|
|
129
|
+
coerce('title.side', orientation === 'h' ? 'left' : 'top');
|
|
130
|
+
Lib.coerceFont(coerce, 'title.font', layoutOut.font);
|
|
131
|
+
}
|
|
119
132
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright 2012-
|
|
2
|
+
* Copyright 2012-2020, Plotly, Inc.
|
|
3
3
|
* All rights reserved.
|
|
4
4
|
*
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
@@ -65,6 +65,19 @@ module.exports = function draw(gd) {
|
|
|
65
65
|
|
|
66
66
|
var scrollBox = Lib.ensureSingle(legend, 'g', 'scrollbox');
|
|
67
67
|
|
|
68
|
+
var title = opts.title;
|
|
69
|
+
opts._titleWidth = 0;
|
|
70
|
+
opts._titleHeight = 0;
|
|
71
|
+
if(title.text) {
|
|
72
|
+
var titleEl = Lib.ensureSingle(scrollBox, 'text', 'legendtitletext');
|
|
73
|
+
titleEl.attr('text-anchor', 'start')
|
|
74
|
+
.classed('user-select-none', true)
|
|
75
|
+
.call(Drawing.font, title.font)
|
|
76
|
+
.text(title.text);
|
|
77
|
+
|
|
78
|
+
textLayout(titleEl, scrollBox, gd); // handle mathjax or multi-line text and compute title height
|
|
79
|
+
}
|
|
80
|
+
|
|
68
81
|
var scrollBar = Lib.ensureSingle(legend, 'rect', 'scrollbar', function(s) {
|
|
69
82
|
s.attr(constants.scrollBarEnterAttrs)
|
|
70
83
|
.call(Color.fill, constants.scrollBarColor);
|
|
@@ -121,7 +134,7 @@ module.exports = function draw(gd) {
|
|
|
121
134
|
}
|
|
122
135
|
|
|
123
136
|
// Set size and position of all the elements that make up a legend:
|
|
124
|
-
// legend, background and border, scroll box and scroll bar
|
|
137
|
+
// legend, background and border, scroll box and scroll bar as well as title
|
|
125
138
|
Drawing.setTranslate(legend, lx, ly);
|
|
126
139
|
|
|
127
140
|
// to be safe, remove previous listeners
|
|
@@ -370,23 +383,17 @@ function drawTexts(g, gd) {
|
|
|
370
383
|
|
|
371
384
|
textEl.attr('text-anchor', 'start')
|
|
372
385
|
.classed('user-select-none', true)
|
|
373
|
-
.call(Drawing.font,
|
|
386
|
+
.call(Drawing.font, opts.font)
|
|
374
387
|
.text(isEditable ? ensureLength(name, maxNameLength) : name);
|
|
375
388
|
|
|
376
389
|
svgTextUtils.positionText(textEl, constants.textGap, 0);
|
|
377
390
|
|
|
378
|
-
function textLayout(s) {
|
|
379
|
-
svgTextUtils.convertToTspans(s, gd, function() {
|
|
380
|
-
computeTextDimensions(g, gd);
|
|
381
|
-
});
|
|
382
|
-
}
|
|
383
|
-
|
|
384
391
|
if(isEditable) {
|
|
385
392
|
textEl.call(svgTextUtils.makeEditable, {gd: gd, text: name})
|
|
386
|
-
.call(textLayout)
|
|
393
|
+
.call(textLayout, g, gd)
|
|
387
394
|
.on('edit', function(newName) {
|
|
388
395
|
this.text(ensureLength(newName, maxNameLength))
|
|
389
|
-
.call(textLayout);
|
|
396
|
+
.call(textLayout, g, gd);
|
|
390
397
|
|
|
391
398
|
var fullInput = legendItem.trace._fullInput || {};
|
|
392
399
|
var update = {};
|
|
@@ -407,7 +414,7 @@ function drawTexts(g, gd) {
|
|
|
407
414
|
return Registry.call('_guiRestyle', gd, update, traceIndex);
|
|
408
415
|
});
|
|
409
416
|
} else {
|
|
410
|
-
textLayout(textEl);
|
|
417
|
+
textLayout(textEl, g, gd);
|
|
411
418
|
}
|
|
412
419
|
}
|
|
413
420
|
|
|
@@ -460,18 +467,24 @@ function setupTraceToggle(g, gd) {
|
|
|
460
467
|
});
|
|
461
468
|
}
|
|
462
469
|
|
|
470
|
+
function textLayout(s, g, gd) {
|
|
471
|
+
svgTextUtils.convertToTspans(s, gd, function() {
|
|
472
|
+
computeTextDimensions(g, gd);
|
|
473
|
+
});
|
|
474
|
+
}
|
|
475
|
+
|
|
463
476
|
function computeTextDimensions(g, gd) {
|
|
464
477
|
var legendItem = g.data()[0][0];
|
|
465
|
-
|
|
466
|
-
if(!legendItem.trace.showlegend) {
|
|
478
|
+
if(legendItem && !legendItem.trace.showlegend) {
|
|
467
479
|
g.remove();
|
|
468
480
|
return;
|
|
469
481
|
}
|
|
470
482
|
|
|
471
483
|
var mathjaxGroup = g.select('g[class*=math-group]');
|
|
472
484
|
var mathjaxNode = mathjaxGroup.node();
|
|
485
|
+
var bw = gd._fullLayout.legend.borderwidth;
|
|
473
486
|
var opts = gd._fullLayout.legend;
|
|
474
|
-
var lineHeight = opts.font.size * LINE_SPACING;
|
|
487
|
+
var lineHeight = (legendItem ? opts : opts.title).font.size * LINE_SPACING;
|
|
475
488
|
var height, width;
|
|
476
489
|
|
|
477
490
|
if(mathjaxNode) {
|
|
@@ -480,24 +493,56 @@ function computeTextDimensions(g, gd) {
|
|
|
480
493
|
height = mathjaxBB.height;
|
|
481
494
|
width = mathjaxBB.width;
|
|
482
495
|
|
|
483
|
-
|
|
496
|
+
if(legendItem) {
|
|
497
|
+
Drawing.setTranslate(mathjaxGroup, 0, height * 0.25);
|
|
498
|
+
} else { // case of title
|
|
499
|
+
Drawing.setTranslate(mathjaxGroup, bw, height * 0.75 + bw);
|
|
500
|
+
}
|
|
484
501
|
} else {
|
|
485
|
-
var
|
|
486
|
-
|
|
487
|
-
|
|
502
|
+
var textEl = g.select(legendItem ?
|
|
503
|
+
'.legendtext' : '.legendtitletext'
|
|
504
|
+
);
|
|
505
|
+
var textLines = svgTextUtils.lineCount(textEl);
|
|
506
|
+
var textNode = textEl.node();
|
|
488
507
|
|
|
489
508
|
height = lineHeight * textLines;
|
|
490
509
|
width = textNode ? Drawing.bBox(textNode).width : 0;
|
|
491
510
|
|
|
492
511
|
// approximation to height offset to center the font
|
|
493
512
|
// to avoid getBoundingClientRect
|
|
494
|
-
var textY = lineHeight * (
|
|
495
|
-
|
|
513
|
+
var textY = lineHeight * ((textLines - 1) / 2 - 0.3);
|
|
514
|
+
if(legendItem) {
|
|
515
|
+
svgTextUtils.positionText(textEl, constants.textGap, -textY);
|
|
516
|
+
} else { // case of title
|
|
517
|
+
svgTextUtils.positionText(textEl, constants.titlePad + bw, lineHeight + bw);
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
if(legendItem) {
|
|
522
|
+
legendItem.lineHeight = lineHeight;
|
|
523
|
+
legendItem.height = Math.max(height, 16) + 3;
|
|
524
|
+
legendItem.width = width;
|
|
525
|
+
} else { // case of title
|
|
526
|
+
opts._titleWidth = width;
|
|
527
|
+
opts._titleHeight = height;
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
|
|
531
|
+
function getTitleSize(opts) {
|
|
532
|
+
var w = 0;
|
|
533
|
+
var h = 0;
|
|
534
|
+
|
|
535
|
+
var side = opts.title.side;
|
|
536
|
+
if(side) {
|
|
537
|
+
if(side.indexOf('left') !== -1) {
|
|
538
|
+
w = opts._titleWidth;
|
|
539
|
+
}
|
|
540
|
+
if(side.indexOf('top') !== -1) {
|
|
541
|
+
h = opts._titleHeight;
|
|
542
|
+
}
|
|
496
543
|
}
|
|
497
544
|
|
|
498
|
-
|
|
499
|
-
legendItem.height = Math.max(height, 16) + 3;
|
|
500
|
-
legendItem.width = width;
|
|
545
|
+
return [w, h];
|
|
501
546
|
}
|
|
502
547
|
|
|
503
548
|
/*
|
|
@@ -514,6 +559,7 @@ function computeLegendDimensions(gd, groups, traces) {
|
|
|
514
559
|
var fullLayout = gd._fullLayout;
|
|
515
560
|
var opts = fullLayout.legend;
|
|
516
561
|
var gs = fullLayout._size;
|
|
562
|
+
|
|
517
563
|
var isVertical = helpers.isVertical(opts);
|
|
518
564
|
var isGrouped = helpers.isGrouped(opts);
|
|
519
565
|
|
|
@@ -537,11 +583,15 @@ function computeLegendDimensions(gd, groups, traces) {
|
|
|
537
583
|
var toggleRectWidth = 0;
|
|
538
584
|
opts._width = 0;
|
|
539
585
|
opts._height = 0;
|
|
586
|
+
var titleSize = getTitleSize(opts);
|
|
540
587
|
|
|
541
588
|
if(isVertical) {
|
|
542
589
|
traces.each(function(d) {
|
|
543
590
|
var h = d[0].height;
|
|
544
|
-
Drawing.setTranslate(this,
|
|
591
|
+
Drawing.setTranslate(this,
|
|
592
|
+
bw + titleSize[0],
|
|
593
|
+
bw + titleSize[1] + opts._height + h / 2 + itemGap
|
|
594
|
+
);
|
|
545
595
|
opts._height += h;
|
|
546
596
|
opts._width = Math.max(opts._width, d[0].width);
|
|
547
597
|
});
|
|
@@ -591,7 +641,10 @@ function computeLegendDimensions(gd, groups, traces) {
|
|
|
591
641
|
var offsetY = 0;
|
|
592
642
|
d3.select(this).selectAll('g.traces').each(function(d) {
|
|
593
643
|
var h = d[0].height;
|
|
594
|
-
Drawing.setTranslate(this,
|
|
644
|
+
Drawing.setTranslate(this,
|
|
645
|
+
titleSize[0],
|
|
646
|
+
titleSize[1] + bw + itemGap + h / 2 + offsetY
|
|
647
|
+
);
|
|
595
648
|
offsetY += h;
|
|
596
649
|
maxWidthInGroup = Math.max(maxWidthInGroup, textGap + d[0].width);
|
|
597
650
|
});
|
|
@@ -634,7 +687,10 @@ function computeLegendDimensions(gd, groups, traces) {
|
|
|
634
687
|
maxItemHeightInRow = 0;
|
|
635
688
|
}
|
|
636
689
|
|
|
637
|
-
Drawing.setTranslate(this,
|
|
690
|
+
Drawing.setTranslate(this,
|
|
691
|
+
titleSize[0] + bw + offsetX,
|
|
692
|
+
titleSize[1] + bw + offsetY + h / 2 + itemGap
|
|
693
|
+
);
|
|
638
694
|
|
|
639
695
|
rowWidth = offsetX + w + itemGap;
|
|
640
696
|
offsetX += next;
|
|
@@ -651,8 +707,19 @@ function computeLegendDimensions(gd, groups, traces) {
|
|
|
651
707
|
}
|
|
652
708
|
}
|
|
653
709
|
|
|
654
|
-
opts._width = Math.ceil(
|
|
655
|
-
|
|
710
|
+
opts._width = Math.ceil(
|
|
711
|
+
Math.max(
|
|
712
|
+
opts._width + titleSize[0],
|
|
713
|
+
opts._titleWidth + 2 * (bw + constants.titlePad)
|
|
714
|
+
)
|
|
715
|
+
);
|
|
716
|
+
|
|
717
|
+
opts._height = Math.ceil(
|
|
718
|
+
Math.max(
|
|
719
|
+
opts._height + titleSize[1],
|
|
720
|
+
opts._titleHeight + 2 * (bw + constants.itemGap)
|
|
721
|
+
)
|
|
722
|
+
);
|
|
656
723
|
|
|
657
724
|
opts._effHeight = Math.min(opts._height, opts._maxHeight);
|
|
658
725
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright 2012-
|
|
2
|
+
* Copyright 2012-2020, Plotly, Inc.
|
|
3
3
|
* All rights reserved.
|
|
4
4
|
*
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
@@ -165,11 +165,12 @@ module.exports = function handleClick(g, gd, numClicks) {
|
|
|
165
165
|
} else if(mode === 'toggleothers') {
|
|
166
166
|
// Compute the clicked index. expandedIndex does what we want for expanded traces
|
|
167
167
|
// but also culls hidden traces. That means we have some work to do.
|
|
168
|
-
var isClicked, isInGroup, otherState;
|
|
168
|
+
var isClicked, isInGroup, notInLegend, otherState;
|
|
169
169
|
var isIsolated = true;
|
|
170
170
|
for(i = 0; i < fullData.length; i++) {
|
|
171
171
|
isClicked = fullData[i] === fullTrace;
|
|
172
|
-
|
|
172
|
+
notInLegend = fullData[i].showlegend !== true;
|
|
173
|
+
if(isClicked || notInLegend) continue;
|
|
173
174
|
|
|
174
175
|
isInGroup = (hasLegendgroup && fullData[i].legendgroup === legendgroup);
|
|
175
176
|
|
|
@@ -194,8 +195,10 @@ module.exports = function handleClick(g, gd, numClicks) {
|
|
|
194
195
|
case true:
|
|
195
196
|
otherState = isIsolated ? true : 'legendonly';
|
|
196
197
|
isClicked = fullData[i] === fullTrace;
|
|
198
|
+
// N.B. consider traces that have a set legendgroup as toggleable
|
|
199
|
+
notInLegend = (fullData[i].showlegend !== true && !fullData[i].legendgroup);
|
|
197
200
|
isInGroup = isClicked || (hasLegendgroup && fullData[i].legendgroup === legendgroup);
|
|
198
|
-
setVisibility(fullData[i], isInGroup ? true : otherState);
|
|
201
|
+
setVisibility(fullData[i], (isInGroup || notInLegend) ? true : otherState);
|
|
199
202
|
break;
|
|
200
203
|
}
|
|
201
204
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright 2012-
|
|
2
|
+
* Copyright 2012-2020, Plotly, Inc.
|
|
3
3
|
* All rights reserved.
|
|
4
4
|
*
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
@@ -84,6 +84,7 @@ module.exports = function style(s, gd) {
|
|
|
84
84
|
.enter().append('g')
|
|
85
85
|
.classed('legendpoints', true);
|
|
86
86
|
})
|
|
87
|
+
.each(styleSpatial)
|
|
87
88
|
.each(styleWaterfalls)
|
|
88
89
|
.each(styleFunnels)
|
|
89
90
|
.each(styleBars)
|
|
@@ -481,8 +482,132 @@ module.exports = function style(s, gd) {
|
|
|
481
482
|
stylePie(pts, d0Mod, tMod);
|
|
482
483
|
}
|
|
483
484
|
}
|
|
485
|
+
|
|
486
|
+
function styleSpatial(d) { // i.e. maninly traces having z and colorscale
|
|
487
|
+
var trace = d[0].trace;
|
|
488
|
+
|
|
489
|
+
var useGradient;
|
|
490
|
+
var ptsData = [];
|
|
491
|
+
if(trace.visible) {
|
|
492
|
+
switch(trace.type) {
|
|
493
|
+
case 'histogram2d' :
|
|
494
|
+
case 'heatmap' :
|
|
495
|
+
ptsData = [
|
|
496
|
+
['M-15,-2V4H15V-2Z'] // similar to contour
|
|
497
|
+
];
|
|
498
|
+
useGradient = true;
|
|
499
|
+
break;
|
|
500
|
+
case 'choropleth' :
|
|
501
|
+
case 'choroplethmapbox' :
|
|
502
|
+
ptsData = [
|
|
503
|
+
['M-6,-6V6H6V-6Z']
|
|
504
|
+
];
|
|
505
|
+
useGradient = true;
|
|
506
|
+
break;
|
|
507
|
+
case 'densitymapbox' :
|
|
508
|
+
ptsData = [
|
|
509
|
+
['M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0']
|
|
510
|
+
];
|
|
511
|
+
useGradient = 'radial';
|
|
512
|
+
break;
|
|
513
|
+
case 'cone' :
|
|
514
|
+
ptsData = [
|
|
515
|
+
['M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z'],
|
|
516
|
+
['M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z'],
|
|
517
|
+
['M-6,-2 A2,2 0 0,0 -6,2 L6,0Z']
|
|
518
|
+
];
|
|
519
|
+
useGradient = false;
|
|
520
|
+
break;
|
|
521
|
+
case 'streamtube' :
|
|
522
|
+
ptsData = [
|
|
523
|
+
['M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z'],
|
|
524
|
+
['M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z'],
|
|
525
|
+
['M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z']
|
|
526
|
+
];
|
|
527
|
+
useGradient = false;
|
|
528
|
+
break;
|
|
529
|
+
case 'surface' :
|
|
530
|
+
ptsData = [
|
|
531
|
+
['M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z'],
|
|
532
|
+
['M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z']
|
|
533
|
+
];
|
|
534
|
+
useGradient = true;
|
|
535
|
+
break;
|
|
536
|
+
case 'mesh3d' :
|
|
537
|
+
ptsData = [
|
|
538
|
+
['M-6,6H0L-6,-6Z'],
|
|
539
|
+
['M6,6H0L6,-6Z'],
|
|
540
|
+
['M-6,-6H6L0,6Z']
|
|
541
|
+
];
|
|
542
|
+
useGradient = false;
|
|
543
|
+
break;
|
|
544
|
+
case 'volume' :
|
|
545
|
+
ptsData = [
|
|
546
|
+
['M-6,6H0L-6,-6Z'],
|
|
547
|
+
['M6,6H0L6,-6Z'],
|
|
548
|
+
['M-6,-6H6L0,6Z']
|
|
549
|
+
];
|
|
550
|
+
useGradient = true;
|
|
551
|
+
break;
|
|
552
|
+
case 'isosurface':
|
|
553
|
+
ptsData = [
|
|
554
|
+
['M-6,6H0L-6,-6Z'],
|
|
555
|
+
['M6,6H0L6,-6Z'],
|
|
556
|
+
['M-6,-6 A12,24 0 0,0 6,-6 L0,6Z']
|
|
557
|
+
];
|
|
558
|
+
useGradient = false;
|
|
559
|
+
break;
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
|
|
563
|
+
var pts = d3.select(this).select('g.legendpoints')
|
|
564
|
+
.selectAll('path.legend3dandfriends')
|
|
565
|
+
.data(ptsData);
|
|
566
|
+
pts.enter().append('path').classed('legend3dandfriends', true)
|
|
567
|
+
.attr('transform', 'translate(20,0)')
|
|
568
|
+
.style('stroke-miterlimit', 1);
|
|
569
|
+
pts.exit().remove();
|
|
570
|
+
|
|
571
|
+
pts.each(function(dd, i) {
|
|
572
|
+
var pt = d3.select(this);
|
|
573
|
+
|
|
574
|
+
var cOpts = extractOpts(trace);
|
|
575
|
+
var colorscale = cOpts.colorscale;
|
|
576
|
+
var reversescale = cOpts.reversescale;
|
|
577
|
+
var fillGradient = function(s) {
|
|
578
|
+
if(s.size()) {
|
|
579
|
+
var gradientID = 'legendfill-' + trace.uid;
|
|
580
|
+
Drawing.gradient(s, gd, gradientID,
|
|
581
|
+
getGradientDirection(reversescale, useGradient === 'radial'),
|
|
582
|
+
colorscale, 'fill');
|
|
583
|
+
}
|
|
584
|
+
};
|
|
585
|
+
|
|
586
|
+
var fillColor;
|
|
587
|
+
if(!colorscale) {
|
|
588
|
+
var color = trace.vertexcolor || trace.facecolor || trace.color;
|
|
589
|
+
fillColor = Lib.isArrayOrTypedArray(color) ? (color[i] || color[0]) : color;
|
|
590
|
+
} else {
|
|
591
|
+
if(!useGradient) {
|
|
592
|
+
var len = colorscale.length;
|
|
593
|
+
fillColor =
|
|
594
|
+
i === 0 ? colorscale[reversescale ? len - 1 : 0][1] : // minimum
|
|
595
|
+
i === 1 ? colorscale[reversescale ? 0 : len - 1][1] : // maximum
|
|
596
|
+
colorscale[Math.floor((len - 1) / 2)][1]; // middle
|
|
597
|
+
}
|
|
598
|
+
}
|
|
599
|
+
|
|
600
|
+
pt.attr('d', dd[0]);
|
|
601
|
+
if(fillColor) {
|
|
602
|
+
pt.call(Color.fill, fillColor);
|
|
603
|
+
} else {
|
|
604
|
+
pt.call(fillGradient);
|
|
605
|
+
}
|
|
606
|
+
});
|
|
607
|
+
}
|
|
484
608
|
};
|
|
485
609
|
|
|
486
|
-
function getGradientDirection(reversescale) {
|
|
487
|
-
|
|
610
|
+
function getGradientDirection(reversescale, isRadial) {
|
|
611
|
+
var str = isRadial ? 'radial' : 'horizontal';
|
|
612
|
+
return str + (reversescale ? '' : 'reversed');
|
|
488
613
|
}
|