Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,14 @@ To see all merged commits on the master branch that will be part of the next plo

where X.Y.Z is the semver of most recent plotly.js release.

## [3.5.0] -- 2026-04-03

### Added
- Add `hoveranywhere` and `clickanywhere` layout attributes to emit hover and click events anywhere in the plot area, not just over traces [[#7707](https://github.com/plotly/plotly.js/pull/7707)]
- Add `displayNotifier` configuration property to set the display of notifier in the top right area of the viewport [[#7730](https://github.com/plotly/plotly.js/pull/7730)], with thanks to @silversonicaxel for the contribution!
- Update USA location lookup for `scattergeo` and `choropleth` traces to use both location names and abbreviations [[7731](https://github.com/plotly/plotly.js/pull/7731)]


## [3.4.0] -- 2026-02-20

### Added
Expand Down
4 changes: 2 additions & 2 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ authors:
- family-names: "Samimi"
given-names: "Mojtaba"
title: "Open source Plotly charting library"
version: 3.4.0
version: 3.5.0
doi: 10.5281/zenodo.13964707
date-released: 2026-02-20
date-released: 2026-04-03
url: "https://github.com/plotly/plotly.js"
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ You may also consider using [`plotly.js-dist`](https://www.npmjs.com/package/plo

```html
<head>
<script src="https://cdn.plot.ly/plotly-3.4.0.min.js" charset="utf-8"></script>
<script src="https://cdn.plot.ly/plotly-3.5.0.min.js" charset="utf-8"></script>
</head>
<body>
<div id="gd"></div>
Expand All @@ -79,7 +79,7 @@ You may also consider using [`plotly.js-dist`](https://www.npmjs.com/package/plo
Alternatively, you may consider using [native ES6 import](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) in the script tag.
```html
<script type="module">
import "https://cdn.plot.ly/plotly-3.4.0.min.js"
import "https://cdn.plot.ly/plotly-3.5.0.min.js"
Plotly.newPlot("gd", [{ y: [1, 2, 3] }])
</script>
```
Expand All @@ -89,7 +89,7 @@ Fastly supports Plotly.js with free CDN service. Read more at <https://www.fastl
### Un-minified versions are also available on CDN
While non-minified source files may contain characters outside UTF-8, it is recommended that you specify the `charset` when loading those bundles.
```html
<script src="https://cdn.plot.ly/plotly-3.4.0.js" charset="utf-8"></script>
<script src="https://cdn.plot.ly/plotly-3.5.0.js" charset="utf-8"></script>
```

> Please note that as of v2 the "plotly-latest" outputs (e.g. https://cdn.plot.ly/plotly-latest.min.js) will no longer be updated on the CDN, and will stay at the last v1 patch v1.58.5. Therefore, to use the CDN with plotly.js v2 and higher, you must specify an exact plotly.js version.
Expand Down
52 changes: 26 additions & 26 deletions dist/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,9 @@ The main plotly.js bundles weight in at:
| 10.7 MB | 4.6 MB | 1.4 MB | 11 MB |

#### CDN links
> https://cdn.plot.ly/plotly-3.4.0.js
> https://cdn.plot.ly/plotly-3.5.0.js

> https://cdn.plot.ly/plotly-3.4.0.min.js
> https://cdn.plot.ly/plotly-3.5.0.min.js


#### npm packages
Expand Down Expand Up @@ -91,12 +91,12 @@ The `basic` partial bundle contains trace modules `bar`, `pie` and `scatter`.

| Raw size | Minified size | Minified + gzip size |
|------|-----------------|------------------------|
| 2.7 MB | 1.1 MB | 364.6 kB |
| 2.7 MB | 1.1 MB | 364.8 kB |

#### CDN links
> https://cdn.plot.ly/plotly-basic-3.4.0.js
> https://cdn.plot.ly/plotly-basic-3.5.0.js

> https://cdn.plot.ly/plotly-basic-3.4.0.min.js
> https://cdn.plot.ly/plotly-basic-3.5.0.min.js


#### npm packages
Expand All @@ -114,12 +114,12 @@ The `cartesian` partial bundle contains trace modules `bar`, `box`, `contour`, `

| Raw size | Minified size | Minified + gzip size |
|------|-----------------|------------------------|
| 3.4 MB | 1.4 MB | 462.8 kB |
| 3.4 MB | 1.4 MB | 463 kB |

#### CDN links
> https://cdn.plot.ly/plotly-cartesian-3.4.0.js
> https://cdn.plot.ly/plotly-cartesian-3.5.0.js

> https://cdn.plot.ly/plotly-cartesian-3.4.0.min.js
> https://cdn.plot.ly/plotly-cartesian-3.5.0.min.js


#### npm packages
Expand All @@ -137,12 +137,12 @@ The `geo` partial bundle contains trace modules `choropleth`, `scatter` and `sca

| Raw size | Minified size | Minified + gzip size |
|------|-----------------|------------------------|
| 3 MB | 1.2 MB | 414.2 kB |
| 3 MB | 1.2 MB | 415.2 kB |

#### CDN links
> https://cdn.plot.ly/plotly-geo-3.4.0.js
> https://cdn.plot.ly/plotly-geo-3.5.0.js

> https://cdn.plot.ly/plotly-geo-3.4.0.min.js
> https://cdn.plot.ly/plotly-geo-3.5.0.min.js


#### npm packages
Expand All @@ -160,12 +160,12 @@ The `gl3d` partial bundle contains trace modules `cone`, `isosurface`, `mesh3d`,

| Raw size | Minified size | Minified + gzip size |
|------|-----------------|------------------------|
| 4.2 MB | 1.6 MB | 532.4 kB |
| 4.2 MB | 1.6 MB | 527.4 kB |

#### CDN links
> https://cdn.plot.ly/plotly-gl3d-3.4.0.js
> https://cdn.plot.ly/plotly-gl3d-3.5.0.js

> https://cdn.plot.ly/plotly-gl3d-3.4.0.min.js
> https://cdn.plot.ly/plotly-gl3d-3.5.0.min.js


#### npm packages
Expand All @@ -183,12 +183,12 @@ The `gl2d` partial bundle contains trace modules `parcoords`, `scatter`, `scatte

| Raw size | Minified size | Minified + gzip size |
|------|-----------------|------------------------|
| 3.8 MB | 1.5 MB | 520.8 kB |
| 3.8 MB | 1.5 MB | 521.2 kB |

#### CDN links
> https://cdn.plot.ly/plotly-gl2d-3.4.0.js
> https://cdn.plot.ly/plotly-gl2d-3.5.0.js

> https://cdn.plot.ly/plotly-gl2d-3.4.0.min.js
> https://cdn.plot.ly/plotly-gl2d-3.5.0.min.js


#### npm packages
Expand All @@ -206,12 +206,12 @@ The `mapbox` partial bundle contains trace modules `choroplethmapbox`, `densitym

| Raw size | Minified size | Minified + gzip size |
|------|-----------------|------------------------|
| 4.5 MB | 1.9 MB | 579.3 kB |
| 4.5 MB | 1.9 MB | 580.1 kB |

#### CDN links
> https://cdn.plot.ly/plotly-mapbox-3.4.0.js
> https://cdn.plot.ly/plotly-mapbox-3.5.0.js

> https://cdn.plot.ly/plotly-mapbox-3.4.0.min.js
> https://cdn.plot.ly/plotly-mapbox-3.5.0.min.js


#### npm packages
Expand All @@ -229,12 +229,12 @@ The `finance` partial bundle contains trace modules `bar`, `candlestick`, `funne

| Raw size | Minified size | Minified + gzip size |
|------|-----------------|------------------------|
| 2.9 MB | 1.2 MB | 398.2 kB |
| 2.9 MB | 1.2 MB | 398.5 kB |

#### CDN links
> https://cdn.plot.ly/plotly-finance-3.4.0.js
> https://cdn.plot.ly/plotly-finance-3.5.0.js

> https://cdn.plot.ly/plotly-finance-3.4.0.min.js
> https://cdn.plot.ly/plotly-finance-3.5.0.min.js


#### npm packages
Expand All @@ -252,12 +252,12 @@ The `strict` partial bundle contains trace modules `bar`, `barpolar`, `box`, `ca

| Raw size | Minified size | Minified + gzip size |
|------|-----------------|------------------------|
| 11.5 MB | 5 MB | 1.5 MB |
| 11.5 MB | 4.9 MB | 1.5 MB |

#### CDN links
> https://cdn.plot.ly/plotly-strict-3.4.0.js
> https://cdn.plot.ly/plotly-strict-3.5.0.js

> https://cdn.plot.ly/plotly-strict-3.4.0.min.js
> https://cdn.plot.ly/plotly-strict-3.5.0.min.js


#### npm packages
Expand Down
21 changes: 19 additions & 2 deletions dist/plot-schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,11 @@
false
]
},
"displayNotifier": {
"description": "Determines whether or not notifier is displayed.",
"dflt": true,
"valType": "boolean"
},
"doubleClick": {
"description": "Sets the double click interaction mode. Has an effect only in cartesian plots. If *false*, double click is disable. If *reset*, double click resets the axis ranges to their initial values. If *autosize*, double click set the axis ranges to their autorange values. If *reset+autosize*, the odd double clicks resets the axis ranges to their initial values and even double clicks set the axis ranges to their autorange values.",
"dflt": "reset+autosize",
Expand Down Expand Up @@ -1166,6 +1171,12 @@
"ummalqura"
]
},
"clickanywhere": {
"description": "If true, `plotly_click` events will fire for any click position within the plot area, not just over traces. When clicking where there is no trace data, the event will have an empty `points` array but will include `xvals` and `yvals` with click coordinates in data space.",
"dflt": false,
"editType": "none",
"valType": "boolean"
},
"clickmode": {
"description": "Determines the mode of single click interactions. *event* is the default value and emits the `plotly_click` event. In addition this mode emits the `plotly_selected` event in drag modes *lasso* and *select*, but with no event data attached (kept for compatibility reasons). The *select* flag enables selecting single data points via click. This mode also supports persistent selections, meaning that pressing Shift while clicking, adds to / subtracts from an existing selection. *select* with `hovermode`: *x* can be confusing, consider explicitly setting `hovermode`: *closest* when using this feature. Selection events are sent accordingly as long as *event* flag is set as well. When the *event* flag is missing, `plotly_click` and `plotly_selected` events are not fired.",
"dflt": "event",
Expand Down Expand Up @@ -2807,6 +2818,12 @@
"editType": "plot",
"valType": "boolean"
},
"hoveranywhere": {
"description": "If true, `plotly_hover` events will fire for any cursor position within the plot area, not just over traces. When the cursor is not over a trace, the event will have an empty `points` array but will include `xvals` and `yvals` with cursor coordinates in data space.",
"dflt": false,
"editType": "none",
"valType": "boolean"
},
"hoverdistance": {
"description": "Sets the default distance (in pixels) to look for data to add hover labels (-1 means no cutoff, 0 means no looking for data). This is only a real distance for hovering on point-like objects, like scatter points. For area-like objects (bars, scatter fills, etc) hovering is on inside the area and off outside, but these objects will not supersede hover on point-like objects in case of conflict.",
"dflt": 20,
Expand Down Expand Up @@ -25447,7 +25464,7 @@
"valType": "number"
},
"locationmode": {
"description": "The library used by the *country names* `locationmode` option is changing in an upcoming version. Country names in existing plots may not work in the new version. Determines the set of locations used to match entries in `locations` to regions on the map. Values *ISO-3*, *USA-states*, *country names* correspond to features on the base map and value *geojson-id* corresponds to features from a custom GeoJSON linked to the `geojson` attribute.",
"description": "The library used by the *country names* `locationmode` option is changing in an upcoming version. Country names in existing plots may not work in the new version. Determines the set of locations used to match entries in `locations` to regions on the map. Values *ISO-3*, *USA-states*, *country names* correspond to features on the base map and value *geojson-id* corresponds to features from a custom GeoJSON linked to the `geojson` attribute. *USA-states* accepts both two-letter abbreviations (e.g. *CA*) and full state names (e.g. *California*).",
"dflt": "ISO-3",
"editType": "calc",
"valType": "enumerated",
Expand Down Expand Up @@ -67366,7 +67383,7 @@
}
},
"locationmode": {
"description": "The library used by the *country names* `locationmode` option is changing in an upcoming version. Country names in existing plots may not work in the new version. Determines the set of locations used to match entries in `locations` to regions on the map. Values *ISO-3*, *USA-states*, *country names* correspond to features on the base map and value *geojson-id* corresponds to features from a custom GeoJSON linked to the `geojson` attribute.",
"description": "The library used by the *country names* `locationmode` option is changing in an upcoming version. Country names in existing plots may not work in the new version. Determines the set of locations used to match entries in `locations` to regions on the map. Values *ISO-3*, *USA-states*, *country names* correspond to features on the base map and value *geojson-id* corresponds to features from a custom GeoJSON linked to the `geojson` attribute. *USA-states* accepts both two-letter abbreviations (e.g. *CA*) and full state names (e.g. *California*).",
"dflt": "ISO-3",
"editType": "calc",
"valType": "enumerated",
Expand Down
97 changes: 74 additions & 23 deletions dist/plotly-basic.js

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions dist/plotly-basic.min.js

Large diffs are not rendered by default.

99 changes: 75 additions & 24 deletions dist/plotly-cartesian.js

Large diffs are not rendered by default.

58 changes: 29 additions & 29 deletions dist/plotly-cartesian.min.js

Large diffs are not rendered by default.

97 changes: 74 additions & 23 deletions dist/plotly-finance.js

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions dist/plotly-finance.min.js

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dist/plotly-geo-assets.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

243 changes: 182 additions & 61 deletions dist/plotly-geo.js

Large diffs are not rendered by default.

14 changes: 7 additions & 7 deletions dist/plotly-geo.min.js

Large diffs are not rendered by default.

97 changes: 74 additions & 23 deletions dist/plotly-gl2d.js

Large diffs are not rendered by default.

68 changes: 34 additions & 34 deletions dist/plotly-gl2d.min.js

Large diffs are not rendered by default.

63,232 changes: 31,502 additions & 31,730 deletions dist/plotly-gl3d.js

Large diffs are not rendered by default.

1,270 changes: 635 additions & 635 deletions dist/plotly-gl3d.min.js

Large diffs are not rendered by default.

243 changes: 182 additions & 61 deletions dist/plotly-mapbox.js

Large diffs are not rendered by default.

Loading
Loading