From 39c8ece3266a0d5c5fd2b9ffa04c5e654d308bf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 11:38:22 -0400 Subject: [PATCH 01/10] fix :camel: typo in surface contours attributes: - highlightColor -> highlightcolor - hightlightWidth -> highlightwidth - add backward compatibility block in cleanData and tests --- src/plot_api/plot_api.js | 21 +++++++++++ src/traces/surface/attributes.js | 4 +- src/traces/surface/convert.js | 4 +- src/traces/surface/defaults.js | 4 +- test/jasmine/tests/plot_api_test.js | 58 +++++++++++++++++++++++++++++ 5 files changed, 85 insertions(+), 6 deletions(-) diff --git a/src/plot_api/plot_api.js b/src/plot_api/plot_api.js index 69c11bf277e..55eef0d2d9b 100644 --- a/src/plot_api/plot_api.js +++ b/src/plot_api/plot_api.js @@ -765,6 +765,27 @@ function cleanData(data, existingData) { if(cont.colorscale === 'YIOrRd') cont.colorscale = 'YlOrRd'; } + // fix typo in surface 'highlight*' definitions + if(trace.type === 'surface' && Lib.isPlainObject(trace.contours)) { + var dims = ['x', 'y', 'z']; + + for(var i = 0; i < dims.length; i++) { + var opts = trace.contours[dims[i]]; + + if(!Lib.isPlainObject(opts)) continue; + + if(opts.highlightColor) { + opts.highlightcolor = opts.highlightColor; + delete opts.highlightColor; + } + + if(opts.highlightWidth) { + opts.highlightwidth = opts.highlightWidth; + delete opts.highlightWidth; + } + } + } + // prune empty containers made before the new nestedProperty if(emptyContainer(trace, 'line')) delete trace.line; if('marker' in trace) { diff --git a/src/traces/surface/attributes.js b/src/traces/surface/attributes.js index 57270b2799b..6fe044a90bc 100644 --- a/src/traces/surface/attributes.js +++ b/src/traces/surface/attributes.js @@ -63,12 +63,12 @@ function makeContourAttr(axLetter) { role: 'info', dflt: false }, - highlightColor: { + highlightcolor: { valType: 'color', role: 'style', dflt: '#000' }, - highlightWidth: { + highlightwidth: { valType: 'number', role: 'style', min: 1, diff --git a/src/traces/surface/convert.js b/src/traces/surface/convert.js index 0cb3f1d4671..cae2b35c9e1 100644 --- a/src/traces/surface/convert.js +++ b/src/traces/surface/convert.js @@ -313,8 +313,8 @@ proto.update = function(data) { } if(contourParams.highlight) { - params.dynamicColor[i] = str2RgbaArray(contourParams.highlightColor); - params.dynamicWidth[i] = contourParams.highlightWidth; + params.dynamicColor[i] = str2RgbaArray(contourParams.highlightcolor); + params.dynamicWidth[i] = contourParams.highlightwidth; } } diff --git a/src/traces/surface/defaults.js b/src/traces/surface/defaults.js index 0fa8c456401..1c03198e146 100644 --- a/src/traces/surface/defaults.js +++ b/src/traces/surface/defaults.js @@ -82,8 +82,8 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout } if(highlight) { - coerce(contourDim + '.highlightColor'); - coerce(contourDim + '.highlightWidth'); + coerce(contourDim + '.highlightcolor'); + coerce(contourDim + '.highlightwidth'); } } diff --git a/test/jasmine/tests/plot_api_test.js b/test/jasmine/tests/plot_api_test.js index 6d183f0b14d..764aff5ba19 100644 --- a/test/jasmine/tests/plot_api_test.js +++ b/test/jasmine/tests/plot_api_test.js @@ -689,5 +689,63 @@ describe('Test plot api', function() { Plotly.plot(gd, data); expect(gd.data[0].marker.colorscale).toBe('YlOrRd'); }); + + it('should rename \'highlightColor\' to \'highlightcolor\')', function() { + var data = [{ + type: 'surface', + contours: { + x: { highlightColor: 'red' }, + y: { highlightcolor: 'blue' } + } + }, { + type: 'surface' + }, { + type: 'surface', + contours: false + }, { + type: 'surface', + contours: { + stuff: {}, + x: false, + y: [] + } + }]; + + Plotly.plot(gd, data); + + var contours = gd.data[0].contours; + + expect(contours.x.highlightColor).toBeUndefined(); + expect(contours.x.highlightcolor).toEqual('red'); + expect(contours.y.highlightcolor).toEqual('blue'); + expect(contours.z).toBeUndefined(); + + expect(gd.data[1].contours).toBeUndefined(); + expect(gd.data[2].contours).toBe(false); + expect(gd.data[3].contours).toEqual({ stuff: {}, x: false, y: [] }); + }); + + it('should rename \'highlightWidth\' to \'highlightwidth\')', function() { + var data = [{ + type: 'surface', + contours: { + z: { highlightwidth: 'red' }, + y: { highlightWidth: 'blue' } + } + }, { + type: 'surface' + }]; + + Plotly.plot(gd, data); + + var contours = gd.data[0].contours; + + expect(contours.x).toBeUndefined(); + expect(contours.y.highlightwidth).toEqual('blue'); + expect(contours.z.highlightWidth).toBeUndefined(); + expect(contours.z.highlightwidth).toEqual('red'); + + expect(gd.data[1].contours).toBeUndefined(); + }); }); }); From 173f13e02b569bc00f78bfa3e7214fb127de254b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 11:45:25 -0400 Subject: [PATCH 02/10] make surface contours and scene spikes use Color.defaultLine --- src/plots/gl3d/layout/axis_attributes.js | 4 ++-- src/traces/surface/attributes.js | 5 +++-- test/image/baselines/gl3d_contour-lines.png | Bin 69346 -> 68630 bytes 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/plots/gl3d/layout/axis_attributes.js b/src/plots/gl3d/layout/axis_attributes.js index f311e63d4c4..6c948c1c1cb 100644 --- a/src/plots/gl3d/layout/axis_attributes.js +++ b/src/plots/gl3d/layout/axis_attributes.js @@ -8,7 +8,7 @@ 'use strict'; - +var Color = require('../../../components/color'); var axesAttrs = require('../../cartesian/layout_attributes'); var extendFlat = require('../../../lib/extend').extendFlat; @@ -43,7 +43,7 @@ module.exports = { spikecolor: { valType: 'color', role: 'style', - dflt: 'rgb(0,0,0)', + dflt: Color.defaultLine, description: 'Sets the color of the spikes.' }, showbackground: { diff --git a/src/traces/surface/attributes.js b/src/traces/surface/attributes.js index 6fe044a90bc..542de64e984 100644 --- a/src/traces/surface/attributes.js +++ b/src/traces/surface/attributes.js @@ -9,6 +9,7 @@ 'use strict'; +var Color = require('../../components/color'); var colorscaleAttrs = require('../../components/colorscale/attributes'); var extendFlat = require('../../lib/extend').extendFlat; @@ -44,7 +45,7 @@ function makeContourAttr(axLetter) { color: { valType: 'color', role: 'style', - dflt: '#000' + dflt: Color.defaultLine, }, usecolormap: { valType: 'boolean', @@ -66,7 +67,7 @@ function makeContourAttr(axLetter) { highlightcolor: { valType: 'color', role: 'style', - dflt: '#000' + dflt: Color.defaultLine, }, highlightwidth: { valType: 'number', diff --git a/test/image/baselines/gl3d_contour-lines.png b/test/image/baselines/gl3d_contour-lines.png index fd75d20ff9436c755ccf7f9c2dee65db35a1cc2d..589e628c79f1e5ff2851641c80fb03858377a877 100644 GIT binary patch literal 68630 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 literal 69346 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 YG^v<32oaWn6oj%>6)hg5_i09FW47W1x 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 Q#{s?+< Date: Thu, 21 Apr 2016 11:45:58 -0400 Subject: [PATCH 03/10] add / update surface attribute descriptions --- src/traces/surface/attributes.js | 47 +++++++++++++++++++++++++------- 1 file changed, 37 insertions(+), 10 deletions(-) diff --git a/src/traces/surface/attributes.js b/src/traces/surface/attributes.js index 542de64e984..79c241411a0 100644 --- a/src/traces/surface/attributes.js +++ b/src/traces/surface/attributes.js @@ -20,8 +20,12 @@ function makeContourProjAttr(axLetter) { role: 'info', dflt: false, description: [ - 'Sets whether or not the dynamic contours are projected', - 'along the', axLetter, 'axis.' + 'Determines whether or not these contour lines are projected', + 'on the', axLetter, 'axis walls.', + 'If `highlight` is set to *true* (the default), the projected', + 'lines are shown on hover.', + 'If `show` is set to *true*, the projected lines are shown', + 'in permanence.' ].join(' ') }; } @@ -33,8 +37,8 @@ function makeContourAttr(axLetter) { role: 'info', dflt: false, description: [ - 'Sets whether or not dynamic contours are shown along the', - axLetter, 'axis' + 'Determines whether or not contour lines about the', axLetter, + 'dimension are drawn.' ].join(' ') }, project: { @@ -46,35 +50,48 @@ function makeContourAttr(axLetter) { valType: 'color', role: 'style', dflt: Color.defaultLine, + description: 'Sets the color of the contour lines.' }, usecolormap: { valType: 'boolean', role: 'info', - dflt: false + dflt: false, + description: [ + 'An alternate to *color*.', + 'Determines whether or not the contour lines are colored using', + 'the trace *colorscale*.' + ].join(' ') }, width: { valType: 'number', role: 'style', min: 1, max: 16, - dflt: 2 + dflt: 2, + description: 'Sets the width of the contour lines.' }, highlight: { valType: 'boolean', role: 'info', - dflt: false + dflt: true, + description: [ + 'Determines whether or not contour lines about the', axLetter, + 'dimension are highlighted on hover.' + ].join(' ') }, highlightcolor: { valType: 'color', role: 'style', dflt: Color.defaultLine, + description: 'Sets the color of the highlighted contour lines.' }, highlightwidth: { valType: 'number', role: 'style', min: 1, max: 16, - dflt: 2 + dflt: 2, + description: 'Sets the width of the highlighted contour lines.' } }; } @@ -103,6 +120,7 @@ module.exports = { 'used for setting a color scale independent of `z`.' ].join(' ') }, + cauto: colorscaleAttrs.zauto, cmin: colorscaleAttrs.zmin, cmax: colorscaleAttrs.zmax, @@ -111,6 +129,7 @@ module.exports = { {dflt: false}), reversescale: colorscaleAttrs.reversescale, showscale: colorscaleAttrs.showscale, + contours: { x: makeContourAttr('x'), y: makeContourAttr('y'), @@ -119,8 +138,15 @@ module.exports = { hidesurface: { valType: 'boolean', role: 'info', - dflt: false + dflt: false, + description: [ + 'Determines whether or not a surface is drawn.', + 'For example, set `hidesurface` to *false*', + '`contours.x.show` to *true* and', + '`contours.y.show` to *true* to draw a wire frame plot.', + ].join(' ') }, + lighting: { ambient: { valType: 'number', @@ -164,7 +190,8 @@ module.exports = { role: 'style', min: 0, max: 1, - dflt: 1 + dflt: 1, + description: 'Sets the opacity of the surface.' }, _nestedModules: { // nested module coupling From 68bb94904977937c877dd1315ab09962c6d1b165 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 11:48:30 -0400 Subject: [PATCH 04/10] rm useless field (not found in gl-surface3d) --- src/traces/surface/convert.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/traces/surface/convert.js b/src/traces/surface/convert.js index cae2b35c9e1..af991c2296c 100644 --- a/src/traces/surface/convert.js +++ b/src/traces/surface/convert.js @@ -280,13 +280,11 @@ proto.update = function(data) { } var highlightEnable = [true, true, true]; - var contourEnable = [true, true, true]; var axis = ['x', 'y', 'z']; for(i = 0; i < 3; ++i) { var contourParams = data.contours[axis[i]]; highlightEnable[i] = contourParams.highlight; - contourEnable[i] = contourParams.show; params.showContour[i] = contourParams.show || contourParams.highlight; if(!params.showContour[i]) continue; @@ -323,7 +321,6 @@ proto.update = function(data) { surface.update(params); surface.highlightEnable = highlightEnable; - surface.contourEnable = contourEnable; surface.visible = data.visible; surface.snapToData = true; From 78d8a4902dca3e6596e26398f90ecf1fe7f3ee8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 11:49:40 -0400 Subject: [PATCH 05/10] pass 'contours.?.highlight' to gl-surface3d enableDynamic --- src/traces/surface/convert.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/traces/surface/convert.js b/src/traces/surface/convert.js index af991c2296c..1b075feac6d 100644 --- a/src/traces/surface/convert.js +++ b/src/traces/surface/convert.js @@ -320,8 +320,8 @@ proto.update = function(data) { surface.update(params); - surface.highlightEnable = highlightEnable; surface.visible = data.visible; + surface.enableDynamic = highlightEnable; surface.snapToData = true; From d16199c922e52d0c63894dfa066dad4dbf32162e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 11:49:56 -0400 Subject: [PATCH 06/10] lint --- src/plot_api/plot_api.js | 8 +++----- src/plots/gl3d/layout/axis_defaults.js | 1 + src/traces/surface/convert.js | 1 + 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/plot_api/plot_api.js b/src/plot_api/plot_api.js index 55eef0d2d9b..1088b131e40 100644 --- a/src/plot_api/plot_api.js +++ b/src/plot_api/plot_api.js @@ -659,13 +659,11 @@ function cleanAxRef(container, attr) { } } +// Make a few changes to the data right away +// before it gets used for anything function cleanData(data, existingData) { - // make a few changes to the data right away - // before it gets used for anything - /* - * Enforce unique IDs - */ + // Enforce unique IDs var suids = [], // seen uids --- so we can weed out incoming repeats uids = data.concat(Array.isArray(existingData) ? existingData : []) .filter(function(trace) { return 'uid' in trace; }) diff --git a/src/plots/gl3d/layout/axis_defaults.js b/src/plots/gl3d/layout/axis_defaults.js index 37ee79dcd23..8332efa8bd9 100644 --- a/src/plots/gl3d/layout/axis_defaults.js +++ b/src/plots/gl3d/layout/axis_defaults.js @@ -8,6 +8,7 @@ 'use strict'; + var colorMix = require('tinycolor2').mix; var Lib = require('../../../lib'); diff --git a/src/traces/surface/convert.js b/src/traces/surface/convert.js index 1b075feac6d..dea88dea6c6 100644 --- a/src/traces/surface/convert.js +++ b/src/traces/surface/convert.js @@ -299,6 +299,7 @@ proto.update = function(data) { this.showContour[i] = true; params.levels[i] = contourLevels[i]; surface.highlightColor[i] = params.contourColor[i] = str2RgbaArray(contourParams.color); + if(contourParams.usecolormap) { surface.highlightTint[i] = params.contourTint[i] = 0; } From ab2b9e80baee3fc1f370e7db5009bf7405830b6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 11:51:45 -0400 Subject: [PATCH 07/10] add comment about smarter surface showscale default --- src/traces/surface/defaults.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/traces/surface/defaults.js b/src/traces/surface/defaults.js index 1c03198e146..47307c75fff 100644 --- a/src/traces/surface/defaults.js +++ b/src/traces/surface/defaults.js @@ -94,6 +94,9 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout mapLegacy(traceIn, 'zauto', 'cauto'); } + // TODO if contours.?.usecolormap are false and hidesurface is true + // the colorbar shouldn't be shown by default + colorscaleDefaults( traceIn, traceOut, layout, coerce, {prefix: '', cLetter: 'c'} ); From 5f7293d0e2cdc6eaf5a5452a0d4bd6c14e8ca7d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 13:36:13 -0400 Subject: [PATCH 08/10] fix linting errors --- src/plot_api/plot_api.js | 8 +++++--- src/traces/surface/attributes.js | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/plot_api/plot_api.js b/src/plot_api/plot_api.js index 1088b131e40..dbeaddd2e4e 100644 --- a/src/plot_api/plot_api.js +++ b/src/plot_api/plot_api.js @@ -671,11 +671,13 @@ function cleanData(data, existingData) { for(var tracei = 0; tracei < data.length; tracei++) { var trace = data[tracei]; + var i; // assign uids to each trace and detect collisions. if(!('uid' in trace) || suids.indexOf(trace.uid) !== -1) { - var newUid, i; - for(i=0; i<100; i++) { + var newUid; + + for(i = 0; i < 100; i++) { newUid = Lib.randstr(uids); if(suids.indexOf(newUid)===-1) break; } @@ -767,7 +769,7 @@ function cleanData(data, existingData) { if(trace.type === 'surface' && Lib.isPlainObject(trace.contours)) { var dims = ['x', 'y', 'z']; - for(var i = 0; i < dims.length; i++) { + for(i = 0; i < dims.length; i++) { var opts = trace.contours[dims[i]]; if(!Lib.isPlainObject(opts)) continue; diff --git a/src/traces/surface/attributes.js b/src/traces/surface/attributes.js index 79c241411a0..3cfd0b408e1 100644 --- a/src/traces/surface/attributes.js +++ b/src/traces/surface/attributes.js @@ -143,7 +143,7 @@ module.exports = { 'Determines whether or not a surface is drawn.', 'For example, set `hidesurface` to *false*', '`contours.x.show` to *true* and', - '`contours.y.show` to *true* to draw a wire frame plot.', + '`contours.y.show` to *true* to draw a wire frame plot.' ].join(' ') }, From 3042c13f850981253d068eee7c9df661949f7619 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 13:37:32 -0400 Subject: [PATCH 09/10] stub out gl3d.plot in plot api test, - so that tests can run on gl-less environments e.g. CircleCI. --- test/jasmine/tests/plot_api_test.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/test/jasmine/tests/plot_api_test.js b/test/jasmine/tests/plot_api_test.js index 764aff5ba19..520f4fee006 100644 --- a/test/jasmine/tests/plot_api_test.js +++ b/test/jasmine/tests/plot_api_test.js @@ -711,8 +711,12 @@ describe('Test plot api', function() { } }]; + spyOn(Plots.subplotsRegistry.gl3d, 'plot'); + Plotly.plot(gd, data); + expect(Plots.subplotsRegistry.gl3d.plot).toHaveBeenCalled(); + var contours = gd.data[0].contours; expect(contours.x.highlightColor).toBeUndefined(); @@ -736,8 +740,12 @@ describe('Test plot api', function() { type: 'surface' }]; + spyOn(Plots.subplotsRegistry.gl3d, 'plot'); + Plotly.plot(gd, data); + expect(Plots.subplotsRegistry.gl3d.plot).toHaveBeenCalled(); + var contours = gd.data[0].contours; expect(contours.x).toBeUndefined(); From 07f318a4e323755982af8207430f77a2c975e8fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 21 Apr 2016 13:37:46 -0400 Subject: [PATCH 10/10] update surface defaults tests --- test/jasmine/tests/surface_test.js | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/test/jasmine/tests/surface_test.js b/test/jasmine/tests/surface_test.js index 1936de871b1..8e512734355 100644 --- a/test/jasmine/tests/surface_test.js +++ b/test/jasmine/tests/surface_test.js @@ -1,5 +1,7 @@ var Surface = require('@src/traces/surface'); +var Lib = require('@src/lib'); + describe('Test surface', function() { 'use strict'; @@ -37,13 +39,28 @@ describe('Test surface', function() { traceIn = { z: [[1,2,3], [2,1,2]], contours: { - x: { show: true } + x: {}, + y: { show: true }, + z: { show: false, highlight: false } } }; + var fullOpts = { + show: false, + highlight: true, + project: { x: false, y: false, z: false }, + highlightcolor: '#444', + highlightwidth: 2 + }; + supplyDefaults(traceIn, traceOut, defaultColor, layout); - expect(traceOut.contours.x.project).toEqual({ x: false, y: false, z: false }); - expect(traceOut.contours.y).toEqual({ show: false, highlight: false }); + expect(traceOut.contours.x).toEqual(fullOpts); + expect(traceOut.contours.y).toEqual(Lib.extendDeep({}, fullOpts, { + show: true, + color: '#444', + width: 2, + usecolormap: false + })); expect(traceOut.contours.z).toEqual({ show: false, highlight: false }); }); @@ -56,7 +73,7 @@ describe('Test surface', function() { }; supplyDefaults(traceIn, traceOut, defaultColor, layout); - expect(traceOut.contours.x.color).toEqual('#000'); + expect(traceOut.contours.x.color).toEqual('#444'); expect(traceOut.contours.x.width).toEqual(2); expect(traceOut.contours.x.usecolormap).toEqual(false);