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
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,19 @@ 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.3.0] -- 2025-11-14

### Added
- Add `hovertemplate` for `candlestick` and `ohlc` traces [[#7619](https://github.com/plotly/plotly.js/pull/7619)]
- Generate list of ISO codes for provided topojson maps, update info for some disputed territories [[#7622](https://github.com/plotly/plotly.js/pull/7622)]

### Changed
- Turn off borders for plot container in CSS reset [[#7617](https://github.com/plotly/plotly.js/pull/7617)]

### Fixed
- Fix KDE sampling precision in violin trace to eliminate floating-point drift and prevent density underrun/overrun [[#7581](https://github.com/plotly/plotly.js/pull/7581)], with thanks to @Koookadooo for the contribution!


## [3.2.0] -- 2025-10-30

### 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.2.0
version: 3.3.0
doi: 10.5281/zenodo.13964707
date-released: 2025-10-30
date-released: 2025-11-14
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.2.0.min.js" charset="utf-8"></script>
<script src="https://cdn.plot.ly/plotly-3.3.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.2.0.min.js"
import "https://cdn.plot.ly/plotly-3.3.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.2.0.js" charset="utf-8"></script>
<script src="https://cdn.plot.ly/plotly-3.3.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
2 changes: 1 addition & 1 deletion build/plotcss.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

var Lib = require('../src/lib');
var rules = {
"X,X div": "direction:ltr;font-family:\"Open Sans\",verdana,arial,sans-serif;margin:0;padding:0;",
"X,X div": "direction:ltr;font-family:\"Open Sans\",verdana,arial,sans-serif;margin:0;padding:0;border:0;",
"X input,X button": "font-family:\"Open Sans\",verdana,arial,sans-serif;",
"X input:focus,X button:focus": "outline:none;",
"X a": "text-decoration:none;",
Expand Down
42 changes: 21 additions & 21 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.2.0.js
> https://cdn.plot.ly/plotly-3.3.0.js

> https://cdn.plot.ly/plotly-3.2.0.min.js
> https://cdn.plot.ly/plotly-3.3.0.min.js


#### npm packages
Expand Down Expand Up @@ -94,9 +94,9 @@ The `basic` partial bundle contains trace modules `bar`, `pie` and `scatter`.
| 2.6 MB | 1.1 MB | 361.3 kB |

#### CDN links
> https://cdn.plot.ly/plotly-basic-3.2.0.js
> https://cdn.plot.ly/plotly-basic-3.3.0.js

> https://cdn.plot.ly/plotly-basic-3.2.0.min.js
> https://cdn.plot.ly/plotly-basic-3.3.0.min.js


#### npm packages
Expand All @@ -117,9 +117,9 @@ The `cartesian` partial bundle contains trace modules `bar`, `box`, `contour`, `
| 3.3 MB | 1.3 MB | 459.4 kB |

#### CDN links
> https://cdn.plot.ly/plotly-cartesian-3.2.0.js
> https://cdn.plot.ly/plotly-cartesian-3.3.0.js

> https://cdn.plot.ly/plotly-cartesian-3.2.0.min.js
> https://cdn.plot.ly/plotly-cartesian-3.3.0.min.js


#### npm packages
Expand All @@ -140,9 +140,9 @@ The `geo` partial bundle contains trace modules `choropleth`, `scatter` and `sca
| 2.9 MB | 1.2 MB | 411.1 kB |

#### CDN links
> https://cdn.plot.ly/plotly-geo-3.2.0.js
> https://cdn.plot.ly/plotly-geo-3.3.0.js

> https://cdn.plot.ly/plotly-geo-3.2.0.min.js
> https://cdn.plot.ly/plotly-geo-3.3.0.min.js


#### npm packages
Expand All @@ -163,9 +163,9 @@ The `gl3d` partial bundle contains trace modules `cone`, `isosurface`, `mesh3d`,
| 4.2 MB | 1.6 MB | 529.8 kB |

#### CDN links
> https://cdn.plot.ly/plotly-gl3d-3.2.0.js
> https://cdn.plot.ly/plotly-gl3d-3.3.0.js

> https://cdn.plot.ly/plotly-gl3d-3.2.0.min.js
> https://cdn.plot.ly/plotly-gl3d-3.3.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 | 517.9 kB |
| 3.8 MB | 1.5 MB | 518 kB |

#### CDN links
> https://cdn.plot.ly/plotly-gl2d-3.2.0.js
> https://cdn.plot.ly/plotly-gl2d-3.3.0.js

> https://cdn.plot.ly/plotly-gl2d-3.2.0.min.js
> https://cdn.plot.ly/plotly-gl2d-3.3.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.8 MB | 576.5 kB |
| 4.5 MB | 1.8 MB | 576.6 kB |

#### CDN links
> https://cdn.plot.ly/plotly-mapbox-3.2.0.js
> https://cdn.plot.ly/plotly-mapbox-3.3.0.js

> https://cdn.plot.ly/plotly-mapbox-3.2.0.min.js
> https://cdn.plot.ly/plotly-mapbox-3.3.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 | 395.5 kB |
| 2.9 MB | 1.2 MB | 395.6 kB |

#### CDN links
> https://cdn.plot.ly/plotly-finance-3.2.0.js
> https://cdn.plot.ly/plotly-finance-3.3.0.js

> https://cdn.plot.ly/plotly-finance-3.2.0.min.js
> https://cdn.plot.ly/plotly-finance-3.3.0.min.js


#### npm packages
Expand All @@ -255,9 +255,9 @@ The `strict` partial bundle contains trace modules `bar`, `barpolar`, `box`, `ca
| 11.5 MB | 4.9 MB | 1.5 MB |

#### CDN links
> https://cdn.plot.ly/plotly-strict-3.2.0.js
> https://cdn.plot.ly/plotly-strict-3.3.0.js

> https://cdn.plot.ly/plotly-strict-3.2.0.min.js
> https://cdn.plot.ly/plotly-strict-3.3.0.min.js


#### npm packages
Expand Down
40 changes: 38 additions & 2 deletions dist/plot-schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -22186,12 +22186,30 @@
"valType": "boolean"
},
"split": {
"description": "Show hover information (open, close, high, low) in separate labels.",
"description": "Show hover information (open, close, high, low) in separate labels, rather than a single unified label. Default: *false*. When set to *true*, `hovertemplate` is ignored.",
"dflt": false,
"editType": "style",
"valType": "boolean"
}
},
"hovertemplate": {
"arrayOk": true,
"description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `open`, `high`, `low` and `close`. Anything contained in tag `<extra>` is displayed in the secondary box, for example `<extra>%{fullData.name}</extra>`. To hide the secondary box completely, use an empty tag `<extra></extra>`.",
"dflt": "",
"editType": "none",
"valType": "string"
},
"hovertemplatefallback": {
"description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.",
"dflt": "-",
"editType": "none",
"valType": "any"
},
"hovertemplatesrc": {
"description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.",
"editType": "none",
"valType": "string"
},
"hovertext": {
"arrayOk": true,
"description": "Same as `text`.",
Expand Down Expand Up @@ -52888,12 +52906,30 @@
"valType": "boolean"
},
"split": {
"description": "Show hover information (open, close, high, low) in separate labels.",
"description": "Show hover information (open, close, high, low) in separate labels, rather than a single unified label. Default: *false*. When set to *true*, `hovertemplate` is ignored.",
"dflt": false,
"editType": "style",
"valType": "boolean"
}
},
"hovertemplate": {
"arrayOk": true,
"description": "Template string used for rendering the information that appear on hover box. Note that this will override `hoverinfo`. Variables are inserted using %{variable}, for example \"y: %{y}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#d3-format for details on the formatting syntax. Dates are formatted using d3-time-format's syntax %{variable|d3-time-format}, for example \"Day: %{2019-01-01|%A}\". https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `open`, `high`, `low` and `close`. Anything contained in tag `<extra>` is displayed in the secondary box, for example `<extra>%{fullData.name}</extra>`. To hide the secondary box completely, use an empty tag `<extra></extra>`.",
"dflt": "",
"editType": "none",
"valType": "string"
},
"hovertemplatefallback": {
"description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.",
"dflt": "-",
"editType": "none",
"valType": "any"
},
"hovertemplatesrc": {
"description": "Sets the source reference on Chart Studio Cloud for `hovertemplate`.",
"editType": "none",
"valType": "string"
},
"hovertext": {
"arrayOk": true,
"description": "Same as `text`.",
Expand Down
12 changes: 7 additions & 5 deletions dist/plotly-basic.js

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions dist/plotly-basic.min.js

Large diffs are not rendered by default.

17 changes: 10 additions & 7 deletions dist/plotly-cartesian.js

Large diffs are not rendered by default.

22 changes: 11 additions & 11 deletions dist/plotly-cartesian.min.js

Large diffs are not rendered by default.

38 changes: 25 additions & 13 deletions dist/plotly-finance.js

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions dist/plotly-finance.min.js

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions dist/plotly-geo-assets.js

Large diffs are not rendered by default.

12 changes: 7 additions & 5 deletions dist/plotly-geo.js

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions dist/plotly-geo.min.js

Large diffs are not rendered by default.

12 changes: 7 additions & 5 deletions dist/plotly-gl2d.js

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions dist/plotly-gl2d.min.js

Large diffs are not rendered by default.

12 changes: 7 additions & 5 deletions dist/plotly-gl3d.js

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions dist/plotly-gl3d.min.js

Large diffs are not rendered by default.

12 changes: 7 additions & 5 deletions dist/plotly-mapbox.js

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions dist/plotly-mapbox.min.js

Large diffs are not rendered by default.

43 changes: 28 additions & 15 deletions dist/plotly-strict.js

Large diffs are not rendered by default.

118 changes: 59 additions & 59 deletions dist/plotly-strict.min.js

Large diffs are not rendered by default.

Loading