Skip to content

Commit 1a050e8

Browse files
authored
Merge pull request #2725 from plotly/patch-v1.38.3
Merge v1.38.3 into master
2 parents f4b836c + 578ebe2 commit 1a050e8

29 files changed

+540
-361
lines changed

CHANGELOG.md

+11
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,17 @@ https://github.com/plotly/plotly.js/compare/vX.Y.Z...master
1010
where X.Y.Z is the semver of most recent plotly.js release.
1111

1212

13+
## [1.38.3] -- 2018-06-11
14+
15+
### Fixed
16+
- Fix `cone` axis padding when under `sizemode: 'absolute'` [#2715]
17+
- Fix `cone` scaling on irregular grids [#2715]
18+
- Fix `cone` `sizemode: 'absolute'` scaling and attribute description [#2715]
19+
- Improve `cone` hover picking [#2715]
20+
- Fix exception during histogram cross-trace computation [#2724]
21+
- Fix handling of custom transforms that make their own data arrays [#2714]
22+
23+
1324
## [1.38.2] -- 2018-06-04
1425

1526
### Fixed

dist/README.md

+22-22
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ You can grab the relevant MathJax files in `./dist/extras/mathjax/`.
3838
Plotly.js defaults to US English (en-US) and includes British English (en) in the standard bundle.
3939
Many other localizations are available - here is an example using Swiss-German (de-CH),
4040
see the contents of this directory for the full list.
41-
They are also available on our CDN as https://cdn.plot.ly/plotly-locale-de-ch-latest.js OR https://cdn.plot.ly/plotly-locale-de-ch-1.38.2.js
41+
They are also available on our CDN as https://cdn.plot.ly/plotly-locale-de-ch-latest.js OR https://cdn.plot.ly/plotly-locale-de-ch-1.38.3.js
4242
Note that the file names are all lowercase, even though the region is uppercase when you apply a locale.
4343

4444
*After* the plotly.js script tag, add:
@@ -61,11 +61,11 @@ The main plotly.js bundle includes all the official (non-beta) trace modules.
6161

6262
It be can imported as minified javascript
6363
- using dist file `dist/plotly.min.js`
64-
- using CDN URL https://cdn.plot.ly/plotly-latest.min.js OR https://cdn.plot.ly/plotly-1.38.2.min.js
64+
- using CDN URL https://cdn.plot.ly/plotly-latest.min.js OR https://cdn.plot.ly/plotly-1.38.3.min.js
6565

6666
or as raw javascript:
6767
- using dist file `dist/plotly.js`
68-
- using CDN URL https://cdn.plot.ly/plotly-latest.js OR https://cdn.plot.ly/plotly-1.38.2.js
68+
- using CDN URL https://cdn.plot.ly/plotly-latest.js OR https://cdn.plot.ly/plotly-1.38.3.js
6969
- using CommonJS with `require('plotly.js')`
7070

7171
If you would like to have access to the attribute meta information (including attribute descriptions as on the [schema reference page](https://plot.ly/javascript/reference/)), use dist file `dist/plotly-with-meta.js`
@@ -74,7 +74,7 @@ The main plotly.js bundle weights in at:
7474

7575
| plotly.js | plotly.min.js | plotly.min.js + gzip | plotly-with-meta.js |
7676
|-----------|---------------|----------------------|---------------------|
77-
| 6.3 MB | 2.6 MB | 791.7 kB | 6.5 MB |
77+
| 6.3 MB | 2.6 MB | 791.6 kB | 6.5 MB |
7878

7979
## Partial bundles
8080

@@ -98,13 +98,13 @@ The `basic` partial bundle contains the `scatter`, `bar` and `pie` trace modules
9898
| dist bundle (minified) | `dist/plotly-basic.min.js` |
9999
| CDN URL (latest) | https://cdn.plot.ly/plotly-basic-latest.js |
100100
| CDN URL (latest minified) | https://cdn.plot.ly/plotly-basic-latest.min.js |
101-
| CDN URL (tagged) | https://cdn.plot.ly/plotly-basic-1.38.2.js |
102-
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-basic-1.38.2.min.js |
101+
| CDN URL (tagged) | https://cdn.plot.ly/plotly-basic-1.38.3.js |
102+
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-basic-1.38.3.min.js |
103103
| CommonJS | `require('plotly.js/lib/index-basic')` |
104104

105105
| Raw size | Minified size | Minified + gzip size |
106106
|------|-----------------|------------------------|
107-
| 2.1 MB | 749.8 kB | 244.2 kB |
107+
| 2.1 MB | 750 kB | 244.3 kB |
108108

109109
### plotly.js cartesian
110110

@@ -116,13 +116,13 @@ The `cartesian` partial bundle contains the `scatter`, `bar`, `box`, `heatmap`,
116116
| dist bundle (minified) | `dist/plotly-cartesian.min.js` |
117117
| CDN URL (latest) | https://cdn.plot.ly/plotly-cartesian-latest.js |
118118
| CDN URL (latest minified) | https://cdn.plot.ly/plotly-cartesian-latest.min.js |
119-
| CDN URL (tagged) | https://cdn.plot.ly/plotly-cartesian-1.38.2.js |
120-
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-cartesian-1.38.2.min.js |
119+
| CDN URL (tagged) | https://cdn.plot.ly/plotly-cartesian-1.38.3.js |
120+
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-cartesian-1.38.3.min.js |
121121
| CommonJS | `require('plotly.js/lib/index-cartesian')` |
122122

123123
| Raw size | Minified size | Minified + gzip size |
124124
|------|-----------------|------------------------|
125-
| 2.4 MB | 860.9 kB | 278.8 kB |
125+
| 2.4 MB | 861 kB | 278.9 kB |
126126

127127
### plotly.js geo
128128

@@ -134,13 +134,13 @@ The `geo` partial bundle contains the `scatter`, `scattergeo` and `choropleth` t
134134
| dist bundle (minified) | `dist/plotly-geo.min.js` |
135135
| CDN URL (latest) | https://cdn.plot.ly/plotly-geo-latest.js |
136136
| CDN URL (latest minified) | https://cdn.plot.ly/plotly-geo-latest.min.js |
137-
| CDN URL (tagged) | https://cdn.plot.ly/plotly-geo-1.38.2.js |
138-
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-geo-1.38.2.min.js |
137+
| CDN URL (tagged) | https://cdn.plot.ly/plotly-geo-1.38.3.js |
138+
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-geo-1.38.3.min.js |
139139
| CommonJS | `require('plotly.js/lib/index-geo')` |
140140

141141
| Raw size | Minified size | Minified + gzip size |
142142
|------|-----------------|------------------------|
143-
| 2.1 MB | 773.6 kB | 253.4 kB |
143+
| 2.1 MB | 773.7 kB | 253.4 kB |
144144

145145
### plotly.js gl3d
146146

@@ -152,8 +152,8 @@ The `gl3d` partial bundle contains the `scatter`, `scatter3d`, `surface`, `mesh3
152152
| dist bundle (minified) | `dist/plotly-gl3d.min.js` |
153153
| CDN URL (latest) | https://cdn.plot.ly/plotly-gl3d-latest.js |
154154
| CDN URL (latest minified) | https://cdn.plot.ly/plotly-gl3d-latest.min.js |
155-
| CDN URL (tagged) | https://cdn.plot.ly/plotly-gl3d-1.38.2.js |
156-
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-gl3d-1.38.2.min.js |
155+
| CDN URL (tagged) | https://cdn.plot.ly/plotly-gl3d-1.38.3.js |
156+
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-gl3d-1.38.3.min.js |
157157
| CommonJS | `require('plotly.js/lib/index-gl3d')` |
158158

159159
| Raw size | Minified size | Minified + gzip size |
@@ -170,8 +170,8 @@ The `gl2d` partial bundle contains the `scatter`, `scattergl`, `splom`, `pointcl
170170
| dist bundle (minified) | `dist/plotly-gl2d.min.js` |
171171
| CDN URL (latest) | https://cdn.plot.ly/plotly-gl2d-latest.js |
172172
| CDN URL (latest minified) | https://cdn.plot.ly/plotly-gl2d-latest.min.js |
173-
| CDN URL (tagged) | https://cdn.plot.ly/plotly-gl2d-1.38.2.js |
174-
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-gl2d-1.38.2.min.js |
173+
| CDN URL (tagged) | https://cdn.plot.ly/plotly-gl2d-1.38.3.js |
174+
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-gl2d-1.38.3.min.js |
175175
| CommonJS | `require('plotly.js/lib/index-gl2d')` |
176176

177177
| Raw size | Minified size | Minified + gzip size |
@@ -188,8 +188,8 @@ The `mapbox` partial bundle contains the `scatter` and `scattermapbox` trace mod
188188
| dist bundle (minified) | `dist/plotly-mapbox.min.js` |
189189
| CDN URL (latest) | https://cdn.plot.ly/plotly-mapbox-latest.js |
190190
| CDN URL (latest minified) | https://cdn.plot.ly/plotly-mapbox-latest.min.js |
191-
| CDN URL (tagged) | https://cdn.plot.ly/plotly-mapbox-1.38.2.js |
192-
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-mapbox-1.38.2.min.js |
191+
| CDN URL (tagged) | https://cdn.plot.ly/plotly-mapbox-1.38.3.js |
192+
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-mapbox-1.38.3.min.js |
193193
| CommonJS | `require('plotly.js/lib/index-mapbox')` |
194194

195195
| Raw size | Minified size | Minified + gzip size |
@@ -206,13 +206,13 @@ The `finance` partial bundle contains the `scatter`, `bar`, `histogram`, `pie`,
206206
| dist bundle (minified) | `dist/plotly-finance.min.js` |
207207
| CDN URL (latest) | https://cdn.plot.ly/plotly-finance-latest.js |
208208
| CDN URL (latest minified) | https://cdn.plot.ly/plotly-finance-latest.min.js |
209-
| CDN URL (tagged) | https://cdn.plot.ly/plotly-finance-1.38.2.js |
210-
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-finance-1.38.2.min.js |
209+
| CDN URL (tagged) | https://cdn.plot.ly/plotly-finance-1.38.3.js |
210+
| CDN URL (tagged minified) | https://cdn.plot.ly/plotly-finance-1.38.3.min.js |
211211
| CommonJS | `require('plotly.js/lib/index-finance')` |
212212

213213
| Raw size | Minified size | Minified + gzip size |
214214
|------|-----------------|------------------------|
215-
| 2.2 MB | 780 kB | 253.3 kB |
215+
| 2.2 MB | 780.1 kB | 253.3 kB |
216216

217217
----------------
218218

dist/plot-schema.json

+2-3
Original file line numberDiff line numberDiff line change
@@ -17612,15 +17612,14 @@
1761217612
"role": "info",
1761317613
"editType": "calc",
1761417614
"dflt": "scaled",
17615-
"description": "Sets the mode by which the cones are sized. If *scaled*, `sizeref` scales such that the reference cone size for the maximum vector magnitude is 1. If *absolute*, `sizeref` scales such that the reference cone size for vector magnitude 1 is one grid unit."
17615+
"description": "Determines whether `sizeref` is set as a *scaled* (i.e unitless) scalar (normalized by the max u/v/w norm in the vector field) or as *absolute* value (in the same units as the vector field)."
1761617616
},
1761717617
"sizeref": {
1761817618
"valType": "number",
1761917619
"role": "info",
1762017620
"editType": "calc",
1762117621
"min": 0,
17622-
"dflt": 1,
17623-
"description": "Sets the cone size reference value."
17622+
"description": "Adjusts the cone size scaling. The size of the cones is determined by their u/v/w norm multiplied a factor and `sizeref`. This factor (computed internally) corresponds to the minimum \"time\" to travel across two successive x/y/z positions at the average velocity of those two successive positions. All cones in a given trace use the same factor. With `sizemode` set to *scaled*, `sizeref` is unitless, its default value is *0.5* With `sizemode` set to *absolute*, `sizeref` has the same units as the u/v/w vector field, its the default value is half the sample's maximum vector norm."
1762417623
},
1762517624
"anchor": {
1762617625
"valType": "enumerated",

dist/plotly-basic.js

+21-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* plotly.js (basic) v1.38.2
2+
* plotly.js (basic) v1.38.3
33
* Copyright 2012-2018, Plotly, Inc.
44
* All rights reserved.
55
* Licensed under the MIT license
@@ -33021,7 +33021,7 @@ exports.svgAttrs = {
3302133021
'use strict';
3302233022

3302333023
// package version injected by `npm run preprocess`
33024-
exports.version = '1.38.2';
33024+
exports.version = '1.38.3';
3302533025

3302633026
// inject promise polyfill
3302733027
require('es6-promise').polyfill();
@@ -55885,11 +55885,29 @@ plots.supplyTraceDefaults = function(traceIn, colorIndex, layout, traceInIndex)
5588555885
return traceOut;
5588655886
};
5588755887

55888+
/**
55889+
* hasMakesDataTransform: does this trace have a transform that makes its own
55890+
* data, either by grabbing it from somewhere else or by creating it from input
55891+
* parameters? If so, we should still keep going with supplyDefaults
55892+
* even if the trace is invisible, which may just be because it has no data yet.
55893+
*/
55894+
function hasMakesDataTransform(traceIn) {
55895+
var transformsIn = traceIn.transforms;
55896+
if(Array.isArray(transformsIn) && transformsIn.length) {
55897+
for(var i = 0; i < transformsIn.length; i++) {
55898+
var _module = transformsRegistry[transformsIn[i].type];
55899+
if(_module && _module.makesData) return true;
55900+
}
55901+
}
55902+
return false;
55903+
}
55904+
5588855905
plots.supplyTransformDefaults = function(traceIn, traceOut, layout) {
5588955906
// For now we only allow transforms on 1D traces, ie those that specify a _length.
5589055907
// If we were to implement 2D transforms, we'd need to have each transform
5589155908
// describe its own applicability and disable itself when it doesn't apply.
55892-
if(!traceOut._length) return;
55909+
// Also allow transforms that make their own data, but not in globalTransforms
55910+
if(!(traceOut._length || hasMakesDataTransform(traceIn))) return;
5589355911

5589455912
var globalTransforms = layout._globalTransforms || [];
5589555913
var transformModules = layout._transformModules || [];

dist/plotly-basic.min.js

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/plotly-cartesian.js

+23-4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* plotly.js (cartesian) v1.38.2
2+
* plotly.js (cartesian) v1.38.3
33
* Copyright 2012-2018, Plotly, Inc.
44
* All rights reserved.
55
* Licensed under the MIT license
@@ -33171,7 +33171,7 @@ exports.svgAttrs = {
3317133171
'use strict';
3317233172

3317333173
// package version injected by `npm run preprocess`
33174-
exports.version = '1.38.2';
33174+
exports.version = '1.38.3';
3317533175

3317633176
// inject promise polyfill
3317733177
require('es6-promise').polyfill();
@@ -56035,11 +56035,29 @@ plots.supplyTraceDefaults = function(traceIn, colorIndex, layout, traceInIndex)
5603556035
return traceOut;
5603656036
};
5603756037

56038+
/**
56039+
* hasMakesDataTransform: does this trace have a transform that makes its own
56040+
* data, either by grabbing it from somewhere else or by creating it from input
56041+
* parameters? If so, we should still keep going with supplyDefaults
56042+
* even if the trace is invisible, which may just be because it has no data yet.
56043+
*/
56044+
function hasMakesDataTransform(traceIn) {
56045+
var transformsIn = traceIn.transforms;
56046+
if(Array.isArray(transformsIn) && transformsIn.length) {
56047+
for(var i = 0; i < transformsIn.length; i++) {
56048+
var _module = transformsRegistry[transformsIn[i].type];
56049+
if(_module && _module.makesData) return true;
56050+
}
56051+
}
56052+
return false;
56053+
}
56054+
5603856055
plots.supplyTransformDefaults = function(traceIn, traceOut, layout) {
5603956056
// For now we only allow transforms on 1D traces, ie those that specify a _length.
5604056057
// If we were to implement 2D transforms, we'd need to have each transform
5604156058
// describe its own applicability and disable itself when it doesn't apply.
56042-
if(!traceOut._length) return;
56059+
// Also allow transforms that make their own data, but not in globalTransforms
56060+
if(!(traceOut._length || hasMakesDataTransform(traceIn))) return;
5604356061

5604456062
var globalTransforms = layout._globalTransforms || [];
5604556063
var transformModules = layout._transformModules || [];
@@ -69500,7 +69518,7 @@ var oneMonth = require('../../constants/numerical').ONEAVGMONTH;
6950069518
var getBinSpanLabelRound = require('./bin_label_vals');
6950169519

6950269520
module.exports = function calc(gd, trace) {
69503-
// ignore as much processing as possible (and including in autorange) if bar is not visible
69521+
// ignore as much processing as possible (and including in autorange) if not visible
6950469522
if(trace.visible !== true) return;
6950569523

6950669524
// depending on orientation, set position and size axes and data ranges
@@ -69912,6 +69930,7 @@ function getConnectedHistograms(gd, trace) {
6991269930
for(var i = 0; i < fullData.length; i++) {
6991369931
var tracei = fullData[i];
6991469932
if(tracei.type === 'histogram' &&
69933+
tracei.visible === true &&
6991569934
tracei.orientation === orientation &&
6991669935
tracei.xaxis === xid && tracei.yaxis === yid
6991769936
) {

dist/plotly-cartesian.min.js

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/plotly-finance.js

+23-4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/**
2-
* plotly.js (finance) v1.38.2
2+
* plotly.js (finance) v1.38.3
33
* Copyright 2012-2018, Plotly, Inc.
44
* All rights reserved.
55
* Licensed under the MIT license
@@ -33063,7 +33063,7 @@ exports.svgAttrs = {
3306333063
'use strict';
3306433064

3306533065
// package version injected by `npm run preprocess`
33066-
exports.version = '1.38.2';
33066+
exports.version = '1.38.3';
3306733067

3306833068
// inject promise polyfill
3306933069
require('es6-promise').polyfill();
@@ -55927,11 +55927,29 @@ plots.supplyTraceDefaults = function(traceIn, colorIndex, layout, traceInIndex)
5592755927
return traceOut;
5592855928
};
5592955929

55930+
/**
55931+
* hasMakesDataTransform: does this trace have a transform that makes its own
55932+
* data, either by grabbing it from somewhere else or by creating it from input
55933+
* parameters? If so, we should still keep going with supplyDefaults
55934+
* even if the trace is invisible, which may just be because it has no data yet.
55935+
*/
55936+
function hasMakesDataTransform(traceIn) {
55937+
var transformsIn = traceIn.transforms;
55938+
if(Array.isArray(transformsIn) && transformsIn.length) {
55939+
for(var i = 0; i < transformsIn.length; i++) {
55940+
var _module = transformsRegistry[transformsIn[i].type];
55941+
if(_module && _module.makesData) return true;
55942+
}
55943+
}
55944+
return false;
55945+
}
55946+
5593055947
plots.supplyTransformDefaults = function(traceIn, traceOut, layout) {
5593155948
// For now we only allow transforms on 1D traces, ie those that specify a _length.
5593255949
// If we were to implement 2D transforms, we'd need to have each transform
5593355950
// describe its own applicability and disable itself when it doesn't apply.
55934-
if(!traceOut._length) return;
55951+
// Also allow transforms that make their own data, but not in globalTransforms
55952+
if(!(traceOut._length || hasMakesDataTransform(traceIn))) return;
5593555953

5593655954
var globalTransforms = layout._globalTransforms || [];
5593755955
var transformModules = layout._transformModules || [];
@@ -63867,7 +63885,7 @@ var oneMonth = require('../../constants/numerical').ONEAVGMONTH;
6386763885
var getBinSpanLabelRound = require('./bin_label_vals');
6386863886

6386963887
module.exports = function calc(gd, trace) {
63870-
// ignore as much processing as possible (and including in autorange) if bar is not visible
63888+
// ignore as much processing as possible (and including in autorange) if not visible
6387163889
if(trace.visible !== true) return;
6387263890

6387363891
// depending on orientation, set position and size axes and data ranges
@@ -64279,6 +64297,7 @@ function getConnectedHistograms(gd, trace) {
6427964297
for(var i = 0; i < fullData.length; i++) {
6428064298
var tracei = fullData[i];
6428164299
if(tracei.type === 'histogram' &&
64300+
tracei.visible === true &&
6428264301
tracei.orientation === orientation &&
6428364302
tracei.xaxis === xid && tracei.yaxis === yid
6428464303
) {

dist/plotly-finance.min.js

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/plotly-geo-assets.js

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)