Skip to content

Commit

Permalink
use errorbars methods via getComponentMethod
Browse files Browse the repository at this point in the history
... so that down the road errorbars could be taken out
    or src/core.js, and be its own registrable module.
  • Loading branch information
etpinard committed Mar 1, 2018
1 parent b08c402 commit 87275af
Show file tree
Hide file tree
Showing 15 changed files with 28 additions and 33 deletions.
3 changes: 1 addition & 2 deletions src/plot_api/plot_api.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ var initInteractions = require('../plots/cartesian/graph_interact');

var Drawing = require('../components/drawing');
var Color = require('../components/color');
var ErrorBars = require('../components/errorbars');
var xmlnsNamespaces = require('../constants/xmlns_namespaces');
var svgTextUtils = require('../lib/svg_text_utils');

Expand Down Expand Up @@ -312,7 +311,7 @@ Plotly.plot = function(gd, data, layout, config) {
}

// calc and autorange for errorbars
ErrorBars.calc(gd);
Registry.getComponentMethod('errorbars', 'calc')(gd);

// TODO: autosize extra for text markers and images
// see https://github.com/plotly/plotly.js/issues/1111
Expand Down
4 changes: 1 addition & 3 deletions src/plots/plots.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,6 @@ plots.fontWeight = 'normal';

var transformsRegistry = plots.transformsRegistry;

var ErrorBars = require('../components/errorbars');

var commandModule = require('./command');
plots.executeAPICommand = commandModule.executeAPICommand;
plots.computeAPICommandBindings = commandModule.computeAPICommandBindings;
Expand Down Expand Up @@ -2118,7 +2116,7 @@ plots.transition = function(gd, data, layout, traces, frameOpts, transitionOpts)

plots.doCalcdata(gd);

ErrorBars.calc(gd);
Registry.getComponentMethod('errorbars', 'calc')(gd);

return Promise.resolve();
}
Expand Down
3 changes: 2 additions & 1 deletion src/traces/bar/defaults.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@

var Lib = require('../../lib');
var Color = require('../../components/color');
var Registry = require('../../registry');

var handleXYDefaults = require('../scatter/xy_defaults');
var handleStyleDefaults = require('../bar/style_defaults');
var errorBarsSupplyDefaults = require('../../components/errorbars/defaults');
var attributes = require('./attributes');

module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) {
Expand Down Expand Up @@ -57,6 +57,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
handleStyleDefaults(traceIn, traceOut, coerce, defaultColor, layout);

// override defaultColor for error bars with defaultLine
var errorBarsSupplyDefaults = Registry.getComponentMethod('errorbars', 'supplyDefaults');
errorBarsSupplyDefaults(traceIn, traceOut, Color.defaultLine, {axis: 'y'});
errorBarsSupplyDefaults(traceIn, traceOut, Color.defaultLine, {axis: 'x', inherit: 'y'});

Expand Down
4 changes: 2 additions & 2 deletions src/traces/bar/hover.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
'use strict';

var Fx = require('../../components/fx');
var ErrorBars = require('../../components/errorbars');
var Registry = require('../../registry');
var Color = require('../../components/color');
var fillHoverText = require('../scatter/fill_hover_text');

Expand Down Expand Up @@ -140,7 +140,7 @@ module.exports = function hoverPoints(pointData, xval, yval, hovermode) {
pointData[posLetter + 'Spike'] = pa.c2p(di.p, true);

fillHoverText(di, trace, pointData);
ErrorBars.hoverInfo(di, trace, pointData);
Registry.getComponentMethod('errorbars', 'hoverInfo')(di, trace, pointData);

return [pointData];
};
4 changes: 2 additions & 2 deletions src/traces/bar/plot.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ var svgTextUtils = require('../../lib/svg_text_utils');

var Color = require('../../components/color');
var Drawing = require('../../components/drawing');
var ErrorBars = require('../../components/errorbars');
var Registry = require('../../registry');

var attributes = require('./attributes'),
attributeText = attributes.text,
Expand Down Expand Up @@ -150,7 +150,7 @@ module.exports = function plot(gd, plotinfo, cdbar) {
});

// error bars are on the top
bartraces.call(ErrorBars.plot, plotinfo);
Registry.getComponentMethod('errorbars', 'plot')(bartraces, plotinfo);

// lastly, clip points groups of `cliponaxis !== false` traces
// on `plotinfo._hasClipOnAxisFalse === true` subplots
Expand Down
4 changes: 2 additions & 2 deletions src/traces/bar/style.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

var d3 = require('d3');
var Drawing = require('../../components/drawing');
var ErrorBars = require('../../components/errorbars');
var Registry = require('../../registry');

module.exports = function style(gd, cd) {
var s = cd ? cd[0].node3 : d3.select(gd).selectAll('g.trace.bars');
Expand Down Expand Up @@ -64,5 +64,5 @@ module.exports = function style(gd, cd) {
Drawing.selectedTextStyle(txs, trace);
});

ErrorBars.style(s);
Registry.getComponentMethod('errorbars', 'style')(s);
};
2 changes: 1 addition & 1 deletion src/traces/histogram/defaults.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ var Color = require('../../components/color');

var handleBinDefaults = require('./bin_defaults');
var handleStyleDefaults = require('../bar/style_defaults');
var errorBarsSupplyDefaults = require('../../components/errorbars/defaults');
var attributes = require('./attributes');

module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) {
Expand Down Expand Up @@ -54,6 +53,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
handleStyleDefaults(traceIn, traceOut, coerce, defaultColor, layout);

// override defaultColor for error bars with defaultLine
var errorBarsSupplyDefaults = Registry.getComponentMethod('errorbars', 'supplyDefaults');
errorBarsSupplyDefaults(traceIn, traceOut, Color.defaultLine, {axis: 'y'});
errorBarsSupplyDefaults(traceIn, traceOut, Color.defaultLine, {axis: 'x', inherit: 'y'});

Expand Down
4 changes: 2 additions & 2 deletions src/traces/scatter/defaults.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
* LICENSE file in the root directory of this source tree.
*/


'use strict';

var Lib = require('../../lib');
var Registry = require('../../registry');

var attributes = require('./attributes');
var constants = require('./constants');
Expand All @@ -20,7 +20,6 @@ var handleLineDefaults = require('./line_defaults');
var handleLineShapeDefaults = require('./line_shape_defaults');
var handleTextDefaults = require('./text_defaults');
var handleFillColorDefaults = require('./fillcolor_defaults');
var errorBarsSupplyDefaults = require('../../components/errorbars/defaults');

module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) {
function coerce(attr, dflt) {
Expand Down Expand Up @@ -73,6 +72,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
}
coerce('hoveron', dfltHoverOn.join('+') || 'points');

var errorBarsSupplyDefaults = Registry.getComponentMethod('errorbars', 'supplyDefaults');
errorBarsSupplyDefaults(traceIn, traceOut, defaultColor, {axis: 'y'});
errorBarsSupplyDefaults(traceIn, traceOut, defaultColor, {axis: 'x', inherit: 'y'});

Expand Down
4 changes: 2 additions & 2 deletions src/traces/scatter/hover.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

var Lib = require('../../lib');
var Fx = require('../../components/fx');
var ErrorBars = require('../../components/errorbars');
var Registry = require('../../registry');
var getTraceColor = require('./get_trace_color');
var Color = require('../../components/color');
var fillHoverText = require('./fill_hover_text');
Expand Down Expand Up @@ -83,7 +83,7 @@ module.exports = function hoverPoints(pointData, xval, yval, hovermode) {
});

fillHoverText(di, trace, pointData);
ErrorBars.hoverInfo(di, trace, pointData);
Registry.getComponentMethod('errorbars', 'hoverInfo')(di, trace, pointData);

return [pointData];
}
Expand Down
5 changes: 2 additions & 3 deletions src/traces/scatter/plot.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@

var d3 = require('d3');

var Registry = require('../../registry');
var Lib = require('../../lib');
var Drawing = require('../../components/drawing');
var ErrorBars = require('../../components/errorbars');

var subTypes = require('./subtypes');
var linePoints = require('./line_points');
Expand Down Expand Up @@ -164,9 +164,8 @@ function plotOne(gd, idx, plotinfo, cdscatter, cdscatterAll, element, transition
line = trace.line,
tr = d3.select(element);

// (so error bars can find them along with bars)
// error bars are at the bottom
tr.call(ErrorBars.plot, plotinfo, transitionOpts);
Registry.getComponentMethod('errorbars', 'plot')(tr, plotinfo, transitionOpts);

if(trace.visible !== true) return;

Expand Down
4 changes: 2 additions & 2 deletions src/traces/scatter/style.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

var d3 = require('d3');
var Drawing = require('../../components/drawing');
var ErrorBars = require('../../components/errorbars');
var Registry = require('../../registry');

function style(gd, cd) {
var s = cd ? cd[0].node3 : d3.select(gd).selectAll('g.trace.scatter');
Expand All @@ -32,7 +32,7 @@ function style(gd, cd) {
s.selectAll('g.trace path.js-fill')
.call(Drawing.fillGroupStyle);

s.call(ErrorBars.style);
Registry.getComponentMethod('errorbars', 'style')(s);
}

function stylePoints(sel, trace, gd) {
Expand Down
1 change: 0 additions & 1 deletion src/traces/scatter3d/calc_errors.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@

var makeComputeError = require('../../components/errorbars/compute_error');


function calculateAxisErrors(data, params, scaleFactor) {
if(!params || !params.visible) return null;

Expand Down
3 changes: 1 addition & 2 deletions src/traces/scatter3d/defaults.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,9 @@ var subTypes = require('../scatter/subtypes');
var handleMarkerDefaults = require('../scatter/marker_defaults');
var handleLineDefaults = require('../scatter/line_defaults');
var handleTextDefaults = require('../scatter/text_defaults');
var errorBarsSupplyDefaults = require('../../components/errorbars/defaults');

var attributes = require('./attributes');


module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) {

function coerce(attr, dflt) {
Expand Down Expand Up @@ -63,6 +61,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout
}
}

var errorBarsSupplyDefaults = Registry.getComponentMethod('errorbars', 'supplyDefaults');
errorBarsSupplyDefaults(traceIn, traceOut, defaultColor, {axis: 'z'});
errorBarsSupplyDefaults(traceIn, traceOut, defaultColor, {axis: 'y', inherit: 'z'});
errorBarsSupplyDefaults(traceIn, traceOut, defaultColor, {axis: 'x', inherit: 'z'});
Expand Down
8 changes: 3 additions & 5 deletions src/traces/scattergl/defaults.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,18 @@
* LICENSE file in the root directory of this source tree.
*/


'use strict';

var Lib = require('../../lib');
var Registry = require('../../registry');

var attributes = require('./attributes');
var constants = require('../scatter/constants');
var subTypes = require('../scatter/subtypes');
var handleXYDefaults = require('../scatter/xy_defaults');
var handleMarkerDefaults = require('../scatter/marker_defaults');
var handleLineDefaults = require('../scatter/line_defaults');
var handleFillColorDefaults = require('../scatter/fillcolor_defaults');
var errorBarsSupplyDefaults = require('../../components/errorbars/defaults');

var attributes = require('./attributes');


module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) {
function coerce(attr, dflt) {
Expand Down Expand Up @@ -63,6 +60,7 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout

coerce('hoveron', dfltHoverOn.join('+') || 'points');

var errorBarsSupplyDefaults = Registry.getComponentMethod('errorbars', 'supplyDefaults');
errorBarsSupplyDefaults(traceIn, traceOut, defaultColor, {axis: 'y'});
errorBarsSupplyDefaults(traceIn, traceOut, defaultColor, {axis: 'x', inherit: 'y'});

Expand Down
8 changes: 5 additions & 3 deletions src/traces/scattergl/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ var rgba = require('color-normalize');
var svgSdf = require('svg-path-sdf');
var arrayRange = require('array-range');

var Registry = require('../../registry');
var Lib = require('../../lib');
var Axes = require('../../plots/cartesian/axes');
var Drawing = require('../../components/drawing');
var ErrorBars = require('../../components/errorbars');
var formatColor = require('../../lib/gl_format_color');

var subTypes = require('../scatter/subtypes');
Expand Down Expand Up @@ -194,7 +194,9 @@ function sceneOptions(gd, subplot, trace, positions) {
var linePositions;

// get error values
var errorVals = hasError ? ErrorBars.calcFromTrace(trace, fullLayout) : null;
var errorVals = hasError ?
Registry.getComponentMethod('errorbars', 'calcFromTrace')(trace, fullLayout) :
null;

if(hasErrorX) {
errorXOptions = {};
Expand Down Expand Up @@ -1129,7 +1131,7 @@ function hoverPoints(pointData, xval, yval, hovermode) {
else if(trace.text) pointData.text = trace.text;

fillHoverText(di, trace, pointData);
ErrorBars.hoverInfo(di, trace, pointData);
Registry.getComponentMethod('errorbars', 'hoverInfo')(di, trace, pointData);

return [pointData];
}
Expand Down

0 comments on commit 87275af

Please sign in to comment.