From e962fb4fab88ddf45cc06febaa70ff1dd1c48b27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Mon, 26 Nov 2018 15:58:28 -0500 Subject: [PATCH 01/54] big lint commit in axes.js --- src/plots/cartesian/axes.js | 213 +++++++++++++++++------------------- 1 file changed, 98 insertions(+), 115 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index f45b50d6318..4bf3f35d8a4 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -229,18 +229,15 @@ axes.minDtick = function(ax, newDiff, newFirst, allow) { // save a copy of the initial axis ranges in fullLayout // use them in mode bar and dblclick events axes.saveRangeInitial = function(gd, overwrite) { - var axList = axes.list(gd, '', true), - hasOneAxisChanged = false; + var axList = axes.list(gd, '', true); + var hasOneAxisChanged = false; for(var i = 0; i < axList.length; i++) { var ax = axList[i]; - var isNew = (ax._rangeInitial === undefined); - var hasChanged = ( - isNew || !( - ax.range[0] === ax._rangeInitial[0] && - ax.range[1] === ax._rangeInitial[1] - ) + var hasChanged = isNew || !( + ax.range[0] === ax._rangeInitial[0] && + ax.range[1] === ax._rangeInitial[1] ); if((isNew && ax.autorange === false) || (overwrite && hasChanged)) { @@ -254,21 +251,16 @@ axes.saveRangeInitial = function(gd, overwrite) { // save a copy of the initial spike visibility axes.saveShowSpikeInitial = function(gd, overwrite) { - var axList = axes.list(gd, '', true), - hasOneAxisChanged = false, - allSpikesEnabled = 'on'; + var axList = axes.list(gd, '', true); + var hasOneAxisChanged = false; + var allSpikesEnabled = 'on'; for(var i = 0; i < axList.length; i++) { var ax = axList[i]; - var isNew = (ax._showSpikeInitial === undefined); - var hasChanged = ( - isNew || !( - ax.showspikes === ax._showspikes - ) - ); + var hasChanged = isNew || !(ax.showspikes === ax._showspikes); - if((isNew) || (overwrite && hasChanged)) { + if(isNew || (overwrite && hasChanged)) { ax._showSpikeInitial = ax.showspikes; hasOneAxisChanged = true; } @@ -303,8 +295,7 @@ axes.autoBin = function(data, ax, nbins, is2d, calendar, size) { type: 'linear', range: [dataMin, dataMax] }; - } - else { + } else { dummyAx = { type: ax.type, range: Lib.simpleMap([dataMin, dataMax], ax.c2r, 0, calendar), @@ -389,10 +380,10 @@ axes.autoBin = function(data, ax, nbins, is2d, calendar, size) { function autoShiftNumericBins(binStart, data, ax, dataMin, dataMax) { - var edgecount = 0, - midcount = 0, - intcount = 0, - blankCount = 0; + var edgecount = 0; + var midcount = 0; + var intcount = 0; + var blankCount = 0; function nearEdge(v) { // is a value within 1% of a bin edge? @@ -483,14 +474,14 @@ axes.prepTicks = function(ax) { // calculate max number of (auto) ticks to display based on plot size if(ax.tickmode === 'auto' || !ax.dtick) { - var nt = ax.nticks, - minPx; + var nt = ax.nticks; + var minPx; + if(!nt) { if(ax.type === 'category') { minPx = ax.tickfont ? (ax.tickfont.size || 12) * 1.2 : 15; nt = ax._length / minPx; - } - else { + } else { minPx = ax._id.charAt(0) === 'y' ? 40 : 80; nt = Lib.constrain(ax._length / minPx, 4, 9) + 1; } @@ -596,17 +587,15 @@ axes.calcTicks = function calcTicks(ax) { }; function arrayTicks(ax) { - var vals = ax.tickvals, - text = ax.ticktext, - ticksOut = new Array(vals.length), - rng = Lib.simpleMap(ax.range, ax.r2l), - r0expanded = rng[0] * 1.0001 - rng[1] * 0.0001, - r1expanded = rng[1] * 1.0001 - rng[0] * 0.0001, - tickMin = Math.min(r0expanded, r1expanded), - tickMax = Math.max(r0expanded, r1expanded), - vali, - i, - j = 0; + var vals = ax.tickvals; + var text = ax.ticktext; + var ticksOut = new Array(vals.length); + var rng = Lib.simpleMap(ax.range, ax.r2l); + var r0expanded = rng[0] * 1.0001 - rng[1] * 0.0001; + var r1expanded = rng[1] * 1.0001 - rng[0] * 0.0001; + var tickMin = Math.min(r0expanded, r1expanded); + var tickMax = Math.max(r0expanded, r1expanded); + var j = 0; // without a text array, just format the given values as any other ticks // except with more precision to the numbers @@ -621,8 +610,8 @@ function arrayTicks(ax) { ax.dtick = 'L' + Math.pow(10, Math.floor(Math.min(ax.range[0], ax.range[1])) - 1); } - for(i = 0; i < vals.length; i++) { - vali = tickVal2l(vals[i]); + for(var i = 0; i < vals.length; i++) { + var vali = tickVal2l(vals[i]); if(vali > tickMin && vali < tickMax) { if(text[i] === undefined) ticksOut[j] = axes.tickText(ax, vali); else ticksOut[j] = tickTextObj(ax, vali, String(text[i])); @@ -635,17 +624,17 @@ function arrayTicks(ax) { return ticksOut; } -var roundBase10 = [2, 5, 10], - roundBase24 = [1, 2, 3, 6, 12], - roundBase60 = [1, 2, 5, 10, 15, 30], - // 2&3 day ticks are weird, but need something btwn 1&7 - roundDays = [1, 2, 3, 7, 14], - // approx. tick positions for log axes, showing all (1) and just 1, 2, 5 (2) - // these don't have to be exact, just close enough to round to the right value - roundLog1 = [-0.046, 0, 0.301, 0.477, 0.602, 0.699, 0.778, 0.845, 0.903, 0.954, 1], - roundLog2 = [-0.301, 0, 0.301, 0.699, 1], - // N.B. `thetaunit; 'radians' angular axes must be converted to degrees - roundAngles = [15, 30, 45, 90, 180]; +var roundBase10 = [2, 5, 10]; +var roundBase24 = [1, 2, 3, 6, 12]; +var roundBase60 = [1, 2, 5, 10, 15, 30]; +// 2&3 day ticks are weird, but need something btwn 1&7 +var roundDays = [1, 2, 3, 7, 14]; +// approx. tick positions for log axes, showing all (1) and just 1, 2, 5 (2) +// these don't have to be exact, just close enough to round to the right value +var roundLog1 = [-0.046, 0, 0.301, 0.477, 0.602, 0.699, 0.778, 0.845, 0.903, 0.954, 1]; +var roundLog2 = [-0.301, 0, 0.301, 0.699, 1]; +// N.B. `thetaunit; 'radians' angular axes must be converted to degrees +var roundAngles = [15, 30, 45, 90, 180]; function roundDTick(roughDTick, base, roundingSet) { return base * Lib.roundUp(roughDTick / base, roundingSet); @@ -868,15 +857,15 @@ axes.tickIncrement = function(x, dtick, axrev, calendar) { // calculate the first tick on an axis axes.tickFirst = function(ax) { - var r2l = ax.r2l || Number, - rng = Lib.simpleMap(ax.range, r2l), - axrev = rng[1] < rng[0], - sRound = axrev ? Math.floor : Math.ceil, - // add a tiny extra bit to make sure we get ticks - // that may have been rounded out - r0 = rng[0] * 1.0001 - rng[1] * 0.0001, - dtick = ax.dtick, - tick0 = r2l(ax.tick0); + var r2l = ax.r2l || Number; + var rng = Lib.simpleMap(ax.range, r2l); + var axrev = rng[1] < rng[0]; + var sRound = axrev ? Math.floor : Math.ceil; + // add a tiny extra bit to make sure we get ticks + // that may have been rounded out + var r0 = rng[0] * 1.0001 - rng[1] * 0.0001; + var dtick = ax.dtick; + var tick0 = r2l(ax.tick0); if(isNumeric(dtick)) { var tmin = sRound((r0 - tick0) / dtick) * dtick + tick0; @@ -888,16 +877,14 @@ axes.tickFirst = function(ax) { return tmin; } - var tType = dtick.charAt(0), - dtNum = Number(dtick.substr(1)); + var tType = dtick.charAt(0); + var dtNum = Number(dtick.substr(1)); // Dates: months (or years) if(tType === 'M') { - var cnt = 0, - t0 = tick0, - t1, - mult, - newDTick; + var cnt = 0; + var t0 = tick0; + var t1, mult, newDTick; // This algorithm should work for *any* nonlinear (but close to linear!) // tick spacing. Limit to 10 iterations, for gregorian months it's normally <=3. @@ -939,16 +926,17 @@ axes.tickFirst = function(ax) { // hover is a (truthy) flag for whether to show numbers with a bit // more precision for hovertext axes.tickText = function(ax, x, hover) { - var out = tickTextObj(ax, x), - hideexp, - arrayMode = ax.tickmode === 'array', - extraPrecision = hover || arrayMode, - i, - tickVal2l = ax.type === 'category' ? ax.d2l_noadd : ax.d2l; + var out = tickTextObj(ax, x); + var arrayMode = ax.tickmode === 'array'; + var extraPrecision = hover || arrayMode; + var axType = ax.type; + var tickVal2l = axType === 'category' ? ax.d2l_noadd : ax.d2l; + var i; if(arrayMode && Array.isArray(ax.ticktext)) { - var rng = Lib.simpleMap(ax.range, ax.r2l), - minDiff = Math.abs(rng[1] - rng[0]) / 10000; + var rng = Lib.simpleMap(ax.range, ax.r2l); + var minDiff = Math.abs(rng[1] - rng[0]) / 10000; + for(i = 0; i < ax.ticktext.length; i++) { if(Math.abs(x - tickVal2l(ax.tickvals[i])) < minDiff) break; } @@ -959,28 +947,24 @@ axes.tickText = function(ax, x, hover) { } function isHidden(showAttr) { - var first_or_last; - if(showAttr === undefined) return true; if(hover) return showAttr === 'none'; - first_or_last = { + var firstOrLast = { first: ax._tmin, last: ax._tmax }[showAttr]; - return showAttr !== 'all' && x !== first_or_last; + return showAttr !== 'all' && x !== firstOrLast; } - if(hover) { - hideexp = 'never'; - } else { - hideexp = ax.exponentformat !== 'none' && isHidden(ax.showexponent) ? 'hide' : ''; - } + var hideexp = hover ? + 'never' : + ax.exponentformat !== 'none' && isHidden(ax.showexponent) ? 'hide' : ''; - if(ax.type === 'date') formatDate(ax, out, hover, extraPrecision); - else if(ax.type === 'log') formatLog(ax, out, hover, extraPrecision, hideexp); - else if(ax.type === 'category') formatCategory(ax, out); + if(axType === 'date') formatDate(ax, out, hover, extraPrecision); + else if(axType === 'log') formatLog(ax, out, hover, extraPrecision, hideexp); + else if(axType === 'category') formatCategory(ax, out); else if(isAngular(ax)) formatAngle(ax, out, hover, extraPrecision, hideexp); else formatLinear(ax, out, hover, extraPrecision, hideexp); @@ -1037,8 +1021,8 @@ function tickTextObj(ax, x, text) { } function formatDate(ax, out, hover, extraPrecision) { - var tr = ax._tickround, - fmt = (hover && ax.hoverformat) || axes.getTickFormat(ax); + var tr = ax._tickround; + var fmt = (hover && ax.hoverformat) || axes.getTickFormat(ax); if(extraPrecision) { // second or sub-second precision: extra always shows max digits. @@ -1047,8 +1031,8 @@ function formatDate(ax, out, hover, extraPrecision) { else tr = {y: 'm', m: 'd', d: 'M', M: 'S', S: 4}[tr]; } - var dateStr = Lib.formatDate(out.x, fmt, tr, ax._dateFormat, ax.calendar, ax._extraFormat), - headStr; + var dateStr = Lib.formatDate(out.x, fmt, tr, ax._dateFormat, ax.calendar, ax._extraFormat); + var headStr; var splitIndex = dateStr.indexOf('\n'); if(splitIndex !== -1) { @@ -1284,14 +1268,13 @@ function beyondSI(exponent) { } function numFormat(v, ax, fmtoverride, hover) { - // negative? - var isNeg = v < 0, - // max number of digits past decimal point to show - tickRound = ax._tickround, - exponentFormat = fmtoverride || ax.exponentformat || 'B', - exponent = ax._tickexponent, - tickformat = axes.getTickFormat(ax), - separatethousands = ax.separatethousands; + var isNeg = v < 0; + // max number of digits past decimal point to show + var tickRound = ax._tickround; + var exponentFormat = fmtoverride || ax.exponentformat || 'B'; + var exponent = ax._tickexponent; + var tickformat = axes.getTickFormat(ax); + var separatethousands = ax.separatethousands; // special case for hover: set exponent just for this value, and // add a couple more digits of precision over tick labels @@ -2621,11 +2604,10 @@ function mergeAxisGroups(intoSet, fromSet) { } function swapAxisGroup(gd, xIds, yIds) { - var i, - j, - xFullAxes = [], - yFullAxes = [], - layout = gd.layout; + var xFullAxes = []; + var yFullAxes = []; + var layout = gd.layout; + var i, j; for(i = 0; i < xIds.length; i++) xFullAxes.push(axes.getFromId(gd, xIds[i])); for(i = 0; i < yIds.length; i++) yFullAxes.push(axes.getFromId(gd, yIds[i])); @@ -2638,12 +2620,12 @@ function swapAxisGroup(gd, xIds, yIds) { var numericTypes = ['linear', 'log']; for(i = 0; i < allAxKeys.length; i++) { - var keyi = allAxKeys[i], - xVal = xFullAxes[0][keyi], - yVal = yFullAxes[0][keyi], - allEqual = true, - coerceLinearX = false, - coerceLinearY = false; + var keyi = allAxKeys[i]; + var xVal = xFullAxes[0][keyi]; + var yVal = yFullAxes[0][keyi]; + var allEqual = true; + var coerceLinearX = false; + var coerceLinearY = false; if(keyi.charAt(0) === '_' || typeof xVal === 'function' || noSwapAttrs.indexOf(keyi) !== -1) { continue; @@ -2689,10 +2671,11 @@ function swapAxisAttrs(layout, key, xFullAxes, yFullAxes, dfltTitle) { // in case the value is the default for either axis, // look at the first axis in each list and see if // this key's value is undefined - var np = Lib.nestedProperty, - xVal = np(layout[xFullAxes[0]._name], key).get(), - yVal = np(layout[yFullAxes[0]._name], key).get(), - i; + var np = Lib.nestedProperty; + var xVal = np(layout[xFullAxes[0]._name], key).get(); + var yVal = np(layout[yFullAxes[0]._name], key).get(); + var i; + if(key === 'title') { // special handling of placeholder titles if(xVal && xVal.text === dfltTitle.x) { From d49b7b43558a2885c9155148186a46582c17050e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Mon, 26 Nov 2018 16:47:03 -0500 Subject: [PATCH 02/54] first cut multicategory --- src/plots/cartesian/axes.js | 115 ++++++++++++++++++----- src/plots/cartesian/axis_autotype.js | 8 ++ src/plots/cartesian/layout_attributes.js | 2 +- src/plots/cartesian/set_convert.js | 45 ++++++++- src/plots/gl3d/layout/axis_attributes.js | 5 +- src/plots/polar/layout_attributes.js | 4 +- src/traces/scatter/xy_defaults.js | 14 ++- 7 files changed, 157 insertions(+), 36 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 4bf3f35d8a4..03cf31cfd23 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -157,6 +157,7 @@ var getDataConversions = axes.getDataConversions = function(gd, trace, target, t ax.d2c(targetArray[i]); } } + // TODO? } else { ax = axes.getFromTrace(gd, trace, d2cTarget); } @@ -197,7 +198,7 @@ axes.counterLetter = function(id) { axes.minDtick = function(ax, newDiff, newFirst, allow) { // doesn't make sense to do forced min dTick on log or category axes, // and the plot itself may decide to cancel (ie non-grouped bars) - if(['log', 'category'].indexOf(ax.type) !== -1 || !allow) { + if(['log', 'category', 'multicategory'].indexOf(ax.type) !== -1 || !allow) { ax._minDtick = 0; } // undefined means there's nothing there yet @@ -277,6 +278,7 @@ axes.autoBin = function(data, ax, nbins, is2d, calendar, size) { var dataMin = Lib.aggNums(Math.min, null, data); var dataMax = Lib.aggNums(Math.max, null, data); + // TODO multicategory, if we allow multicategory histograms if(ax.type === 'category') { return { start: dataMin - 0.5, @@ -478,7 +480,7 @@ axes.prepTicks = function(ax) { var minPx; if(!nt) { - if(ax.type === 'category') { + if(ax.type === 'category' || ax.type === 'multicategory') { minPx = ax.tickfont ? (ax.tickfont.size || 12) * 1.2 : 15; nt = ax._length / minPx; } else { @@ -543,7 +545,7 @@ axes.calcTicks = function calcTicks(ax) { // return the full set of tick vals var vals = []; - if(ax.type === 'category') { + if(ax.type === 'category' || ax.type === 'multicategory') { endTick = (axrev) ? Math.max(-0.5, endTick) : Math.min(ax._categories.length - 0.5, endTick); } @@ -602,6 +604,7 @@ function arrayTicks(ax) { if(!Array.isArray(text)) text = []; // make sure showing ticks doesn't accidentally add new categories + // TODO multicategory, if we allow ticktext / tickvals var tickVal2l = ax.type === 'category' ? ax.d2l_noadd : ax.d2l; // array ticks on log axes always show the full number @@ -725,7 +728,7 @@ axes.autoTicks = function(ax, roughDTick) { ax.dtick = (roughDTick > 0.3) ? 'D2' : 'D1'; } } - else if(ax.type === 'category') { + else if(ax.type === 'category' || ax.type === 'multicategory') { ax.tick0 = 0; ax.dtick = Math.ceil(Math.max(roughDTick, 1)); } @@ -765,7 +768,7 @@ function autoTickRound(ax) { dtick = 1; } - if(ax.type === 'category') { + if(ax.type === 'category' || ax.type === 'multicategory') { ax._tickround = null; } if(ax.type === 'date') { @@ -871,7 +874,7 @@ axes.tickFirst = function(ax) { var tmin = sRound((r0 - tick0) / dtick) * dtick + tick0; // make sure no ticks outside the category list - if(ax.type === 'category') { + if(ax.type === 'category' || ax.type === 'multicategory') { tmin = Lib.constrain(tmin, 0, ax._categories.length - 1); } return tmin; @@ -930,6 +933,7 @@ axes.tickText = function(ax, x, hover) { var arrayMode = ax.tickmode === 'array'; var extraPrecision = hover || arrayMode; var axType = ax.type; + // TODO multicategory, if we allow ticktext / tickvals var tickVal2l = axType === 'category' ? ax.d2l_noadd : ax.d2l; var i; @@ -965,6 +969,7 @@ axes.tickText = function(ax, x, hover) { if(axType === 'date') formatDate(ax, out, hover, extraPrecision); else if(axType === 'log') formatLog(ax, out, hover, extraPrecision, hideexp); else if(axType === 'category') formatCategory(ax, out); + else if(axType === 'multicategory') formatMultiCategory(ax, out, hover); else if(isAngular(ax)) formatAngle(ax, out, hover, extraPrecision, hideexp); else formatLinear(ax, out, hover, extraPrecision, hideexp); @@ -972,6 +977,20 @@ axes.tickText = function(ax, x, hover) { if(ax.tickprefix && !isHidden(ax.showtickprefix)) out.text = ax.tickprefix + out.text; if(ax.ticksuffix && !isHidden(ax.showticksuffix)) out.text += ax.ticksuffix; + // Setup ticks and grid lines boundaries + // at 1/2 a 'category' to the left/bottom + if(ax.tickson === 'boundaries') { + var inbounds = function(v) { + var p = ax.l2p(v); + return p >= 0 && p <= ax._length ? v : null; + }; + + out.xbnd = [ + inbounds(out.x - 0.5), + inbounds(out.x + ax.dtick - 0.5) + ]; + } + return out; }; @@ -1147,19 +1166,22 @@ function formatCategory(ax, out) { var tt = ax._categories[Math.round(out.x)]; if(tt === undefined) tt = ''; out.text = String(tt); +} - // Setup ticks and grid lines boundaries - // at 1/2 a 'category' to the left/bottom - if(ax.tickson === 'boundaries') { - var inbounds = function(v) { - var p = ax.l2p(v); - return p >= 0 && p <= ax._length ? v : null; - }; +function formatMultiCategory(ax, out, hover) { + var v = Math.round(out.x); + var tt = ax._categories[v][1]; + var tt2 = ax._categories[v][0]; + tt = tt === undefined ? '' : String(tt); + tt2 = tt2 === undefined ? '' : String(tt2); - out.xbnd = [ - inbounds(out.x - 0.5), - inbounds(out.x + ax.dtick - 0.5) - ]; + if(hover) { + // TODO is this what we want? + out.text = tt2 + ' - ' + tt; + } else { + // setup for secondary labels + out.text = tt; + out.text2 = tt2; } } @@ -1559,6 +1581,9 @@ axes.draw = function(gd, arg, opts) { plotinfo.xaxislayer.selectAll('.' + xa._id + 'tick').remove(); plotinfo.yaxislayer.selectAll('.' + ya._id + 'tick').remove(); + if(xa.type === 'multicategory') { + plotinfo.xaxislayer.selectAll('.' + xa._id + 'tick2').remove(); + } if(plotinfo.gridlayer) plotinfo.gridlayer.selectAll('path').remove(); if(plotinfo.zerolinelayer) plotinfo.zerolinelayer.selectAll('path').remove(); fullLayout._infolayer.select('.g-' + xa._id + 'title').remove(); @@ -1603,7 +1628,9 @@ axes.drawOne = function(gd, ax, opts) { var axLetter = axId.charAt(0); var counterLetter = axes.counterLetter(axId); var mainSubplot = ax._mainSubplot; + var mainLinePosition = ax._mainLinePosition; var mainPlotinfo = fullLayout._plots[mainSubplot]; + var mainAxLayer = mainPlotinfo[axLetter + 'axislayer']; var subplotsWithAx = axes.getSubplots(gd, ax); var vals = ax._vals = axes.calcTicks(ax); @@ -1679,14 +1706,14 @@ axes.drawOne = function(gd, ax, opts) { var tickSubplots = []; if(ax.ticks) { - var mainTickPath = axes.makeTickPath(ax, ax._mainLinePosition, tickSigns[2]); + var mainTickPath = axes.makeTickPath(ax, mainLinePosition, tickSigns[2]); if(ax._anchorAxis && ax.mirror && ax.mirror !== true) { mainTickPath += axes.makeTickPath(ax, ax._mainMirrorPosition, tickSigns[3]); } axes.drawTicks(gd, ax, { vals: tickVals, - layer: mainPlotinfo[axLetter + 'axislayer'], + layer: mainAxLayer, path: mainTickPath, transFn: transFn }); @@ -1710,31 +1737,70 @@ axes.drawOne = function(gd, ax, opts) { }); } - var labelFns = axes.makeLabelFns(ax, ax._mainLinePosition); // stash tickLabels selection, so that drawTitle can use it // to scoot title w/o having to query the axis layer again + // + // TODO? Stash this per class? ax._tickLabels = null; var seq = []; // tick labels - for now just the main labels. // TODO: mirror labels, esp for subplots - if(ax._mainLinePosition) { + if(mainLinePosition) { + var labelFns = axes.makeLabelFns(ax, mainLinePosition); + seq.push(function() { return axes.drawLabels(gd, ax, { vals: vals, - layer: mainPlotinfo[axLetter + 'axislayer'], + layer: mainAxLayer, transFn: transFn, labelXFn: labelFns.labelXFn, labelYFn: labelFns.labelYFn, labelAnchorFn: labelFns.labelAnchorFn, }); }); + + if(ax.type === 'multicategory') { + // drawDividers() + + // TODO move to formatMultiCategory + var lookup = {}; + for(i = 0; i < vals.length; i++) { + var d = vals[i]; + if(lookup[d.text2]) { + lookup[d.text2].push(d.x); + } else { + lookup[d.text2] = [d.x]; + } + } + var secondaryLabelVals = []; + for(var k in lookup) { + secondaryLabelVals.push(tickTextObj(ax, Lib.interp(lookup[k], 0.5), k)); + } + + // TODO could do better! + var secondarayPosition = ax._mainLinePosition + {bottom: 20, top: -20}[ax.side]; + var secondaryLabelFns = axes.makeLabelFns(ax, secondarayPosition); + + seq.push(function() { + return axes.drawLabels(gd, ax, { + vals: secondaryLabelVals, + layer: mainAxLayer, + cls: ax._id + 'tick2', + transFn: transFn, + labelXFn: secondaryLabelFns.labelXFn, + labelYFn: secondaryLabelFns.labelYFn, + labelAnchorFn: secondaryLabelFns.labelAnchorFn, + }); + }); + } } if(!opts.skipTitle && !((ax.rangeslider || {}).visible && ax._boundingBox && ax.side === 'bottom') ) { + // TODO update 'avoid selection' for multicategory seq.push(function() { return axes.drawTitle(gd, ax); }); @@ -1748,7 +1814,7 @@ axes.drawOne = function(gd, ax, opts) { seq.push(function calcBoundingBox() { if(ax.showticklabels) { var gdBB = gd.getBoundingClientRect(); - var bBox = mainPlotinfo[axLetter + 'axislayer'].node().getBoundingClientRect(); + var bBox = mainAxLayer.node().getBoundingClientRect(); /* * the way we're going to use this, the positioning that matters @@ -2155,6 +2221,7 @@ axes.drawZeroLine = function(gd, ax, opts) { * @param {object} opts * - {array of object} vals (calcTicks output-like) * - {d3 selection} layer + * - {string (optional)} cls (node className) * - {fn} transFn * - {fn} labelXFn * - {fn} labelYFn @@ -2165,7 +2232,7 @@ axes.drawLabels = function(gd, ax, opts) { var axId = ax._id; var axLetter = axId.charAt(0); - var cls = axId + 'tick'; + var cls = opts.cls || axId + 'tick'; var vals = opts.vals; var labelXFn = opts.labelXFn; var labelYFn = opts.labelYFn; diff --git a/src/plots/cartesian/axis_autotype.js b/src/plots/cartesian/axis_autotype.js index c7b90565985..ae6dc40a6a7 100644 --- a/src/plots/cartesian/axis_autotype.js +++ b/src/plots/cartesian/axis_autotype.js @@ -15,6 +15,7 @@ var Lib = require('../../lib'); var BADNUM = require('../../constants/numerical').BADNUM; module.exports = function autoType(array, calendar) { + if(multiCategory(array)) return 'multicategory'; if(moreDates(array, calendar)) return 'date'; if(category(array)) return 'category'; if(linearOK(array)) return 'linear'; @@ -81,3 +82,10 @@ function category(a) { return curvecats > curvenums * 2; } + +function multiCategory(a) { + return ( + Array.isArray(a[0]) && Array.isArray(a[1]) && + (category(a[0]) || category(a[1])) + ); +} diff --git a/src/plots/cartesian/layout_attributes.js b/src/plots/cartesian/layout_attributes.js index 09a11d54a4d..5c16a40e36f 100644 --- a/src/plots/cartesian/layout_attributes.js +++ b/src/plots/cartesian/layout_attributes.js @@ -67,7 +67,7 @@ module.exports = { // '-' means we haven't yet run autotype or couldn't find any data // it gets turned into linear in gd._fullLayout but not copied back // to gd.data like the others are. - values: ['-', 'linear', 'log', 'date', 'category'], + values: ['-', 'linear', 'log', 'date', 'category', 'multicategory'], dflt: '-', role: 'info', editType: 'calc', diff --git a/src/plots/cartesian/set_convert.js b/src/plots/cartesian/set_convert.js index e057aba7b20..f805e627d31 100644 --- a/src/plots/cartesian/set_convert.js +++ b/src/plots/cartesian/set_convert.js @@ -255,6 +255,29 @@ module.exports = function setConvert(ax, fullLayout) { return ensureNumber(v); }; } + else if(ax.type === 'multicategory') { + // ax.d2c = ax.d2l = setMultiCategoryIndex; + ax.r2d = ax.c2d = ax.l2d = getCategoryName; + ax.d2r = ax.d2l_noadd = getCategoryIndex; + + ax.r2c = function(v) { + var index = getCategoryIndex(v); + return index !== undefined ? index : ax.fraction2r(0.5); + }; + + ax.l2r = ax.c2r = ensureNumber; + ax.r2l = getCategoryIndex; + + ax.d2p = function(v) { return ax.l2p(ax.r2c(v)); }; + ax.p2d = function(px) { return getCategoryName(p2l(px)); }; + ax.r2p = ax.d2p; + ax.p2r = p2l; + + ax.cleanPos = function(v) { + if(typeof v === 'string' && v !== '') return v; + return ensureNumber(v); + }; + } // find the range value at the specified (linear) fraction of the axis ax.fraction2r = function(v) { @@ -400,7 +423,7 @@ module.exports = function setConvert(ax, fullLayout) { // in case the expected data isn't there, make a list of // integers based on the opposite data ax.makeCalcdata = function(trace, axLetter) { - var arrayIn, arrayOut, i, len; + var arrayIn, arrayOut, i, j, len; var axType = ax.type; var cal = axType === 'date' && trace[axLetter + 'calendar']; @@ -418,8 +441,24 @@ module.exports = function setConvert(ax, fullLayout) { } arrayOut = new Array(len); - for(i = 0; i < len; i++) { - arrayOut[i] = ax.d2c(arrayIn[i], 0, cal); + if(axType === 'multicategory') { + var tmp = new Array(len); + for(j = 0; j < arrayIn.length; j++) { + if(Array.isArray(arrayIn[j])) { + for(i = 0; i < len; i++) { + var v = arrayIn[j][i]; + if(j) tmp[i].push(v); + else tmp[i] = [v]; + } + } + } + for(i = 0; i < len; i++) { + arrayOut[i] = setCategoryIndex(tmp[i]); + } + } else { + for(i = 0; i < len; i++) { + arrayOut[i] = ax.d2c(arrayIn[i], 0, cal); + } } } else { diff --git a/src/plots/gl3d/layout/axis_attributes.js b/src/plots/gl3d/layout/axis_attributes.js index e2c2c9482bc..ef3a2fa4b9a 100644 --- a/src/plots/gl3d/layout/axis_attributes.js +++ b/src/plots/gl3d/layout/axis_attributes.js @@ -13,7 +13,6 @@ var axesAttrs = require('../../cartesian/layout_attributes'); var extendFlat = require('../../../lib/extend').extendFlat; var overrideAll = require('../../../plot_api/edit_types').overrideAll; - module.exports = overrideAll({ visible: axesAttrs.visible, showspikes: { @@ -73,7 +72,9 @@ module.exports = overrideAll({ categoryorder: axesAttrs.categoryorder, categoryarray: axesAttrs.categoryarray, title: axesAttrs.title, - type: axesAttrs.type, + type: extendFlat({}, axesAttrs.type, { + values: ['-', 'linear', 'log', 'date', 'category'] + }), autorange: axesAttrs.autorange, rangemode: axesAttrs.rangemode, range: axesAttrs.range, diff --git a/src/plots/polar/layout_attributes.js b/src/plots/polar/layout_attributes.js index 4d878a9fd43..c40dc8d042c 100644 --- a/src/plots/polar/layout_attributes.js +++ b/src/plots/polar/layout_attributes.js @@ -57,7 +57,9 @@ var axisTickAttrs = overrideAll({ var radialAxisAttrs = { visible: extendFlat({}, axesAttrs.visible, {dflt: true}), - type: axesAttrs.type, + type: extendFlat({}, axesAttrs.type, { + values: ['-', 'linear', 'log', 'date', 'category'] + }), autorange: extendFlat({}, axesAttrs.autorange, {editType: 'plot'}), rangemode: { diff --git a/src/traces/scatter/xy_defaults.js b/src/traces/scatter/xy_defaults.js index 27a987af471..3b8b929040e 100644 --- a/src/traces/scatter/xy_defaults.js +++ b/src/traces/scatter/xy_defaults.js @@ -13,19 +13,23 @@ var Registry = require('../../registry'); module.exports = function handleXYDefaults(traceIn, traceOut, layout, coerce) { - var len, - x = coerce('x'), - y = coerce('y'); + var x = coerce('x'); + var y = coerce('y'); + var len, xlen; var handleCalendarDefaults = Registry.getComponentMethod('calendars', 'handleTraceDefaults'); handleCalendarDefaults(traceIn, traceOut, ['x', 'y'], layout); if(x) { + xlen = Array.isArray(x[0]) ? + x.map(function(c) { return c.length; }) + .sort(function(a, b) { return a - b; })[0] : + x.length; if(y) { - len = Math.min(x.length, y.length); + len = Math.min(xlen, y.length); } else { - len = x.length; + len = xlen; coerce('y0'); coerce('dy'); } From d28ed184c6c3928a688cb16dc79abb12c23df9b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 27 Nov 2018 15:25:26 -0500 Subject: [PATCH 03/54] rm useless `if(ax._mainLinePosition)` condition - ax._mainLinePosition appears to be always defined for cartesian axes --- src/plots/cartesian/axes.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 03cf31cfd23..422c9ca5e69 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1747,7 +1747,6 @@ axes.drawOne = function(gd, ax, opts) { // tick labels - for now just the main labels. // TODO: mirror labels, esp for subplots - if(mainLinePosition) { var labelFns = axes.makeLabelFns(ax, mainLinePosition); seq.push(function() { @@ -1795,7 +1794,6 @@ axes.drawOne = function(gd, ax, opts) { }); }); } - } if(!opts.skipTitle && !((ax.rangeslider || {}).visible && ax._boundingBox && ax.side === 'bottom') From 9ebbe7d72c6689729b77bdee19679749680d5e64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 27 Nov 2018 15:30:16 -0500 Subject: [PATCH 04/54] generalize tick labels selection stash - so that it can still be relevant for multi-category axes. --- src/plots/cartesian/axes.js | 50 ++++++++++++++++++++----------------- 1 file changed, 27 insertions(+), 23 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 422c9ca5e69..1867fb8f27a 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1637,6 +1637,10 @@ axes.drawOne = function(gd, ax, opts) { if(!ax.visible) return; + // stash selections to avoid DOM queries e.g. + // - stash tickLabels selection, so that drawTitle can use it to scoot title + ax._selections = {}; + var transFn = axes.makeTransFn(ax); // We remove zero lines, grid lines, and inside ticks if they're within 1px of the end @@ -1737,12 +1741,6 @@ axes.drawOne = function(gd, ax, opts) { }); } - // stash tickLabels selection, so that drawTitle can use it - // to scoot title w/o having to query the axis layer again - // - // TODO? Stash this per class? - ax._tickLabels = null; - var seq = []; // tick labels - for now just the main labels. @@ -2216,6 +2214,7 @@ axes.drawZeroLine = function(gd, ax, opts) { * - {string} _id * - {boolean} showticklabels * - {number} tickangle + * - {object (optional)} _selections * @param {object} opts * - {array of object} vals (calcTicks output-like) * - {d3 selection} layer @@ -2273,8 +2272,6 @@ axes.drawLabels = function(gd, ax, opts) { tickLabels.exit().remove(); - ax._tickLabels = tickLabels; - // TODO ?? if(isAngular(ax)) { tickLabels.each(function(d) { @@ -2422,20 +2419,18 @@ axes.drawLabels = function(gd, ax, opts) { } } + if(ax._selections) { + ax._selections[cls] = tickLabels; + } + var done = Lib.syncOrAsync([allLabelsReady, fixLabelOverlaps]); if(done && done.then) gd._promises.push(done); return done; }; +function drawTitle(gd, ax) { axes.drawTitle = function(gd, ax) { var fullLayout = gd._fullLayout; - var tickLabels = ax._tickLabels; - - var avoid = { - selection: tickLabels, - side: ax.side - }; - var axId = ax._id; var axLetter = axId.charAt(0); var offsetBase = 1.5; @@ -2443,11 +2438,6 @@ axes.drawTitle = function(gd, ax) { var fontSize = ax.title.font.size; var transform, counterAxis, x, y; - - if(tickLabels && tickLabels.node() && tickLabels.node().parentNode) { - var translation = Drawing.getTranslate(tickLabels.node().parentNode); - avoid.offsetLeft = translation.x; - avoid.offsetTop = translation.y; } var titleStandoff = 10 + fontSize * offsetBase + @@ -2467,8 +2457,6 @@ axes.drawTitle = function(gd, ax) { fontSize * (ax.showticklabels ? 1.5 : 0.5); } y += counterAxis._offset; - - if(!avoid.side) avoid.side = 'bottom'; } else { counterAxis = (ax.anchor === 'free') ? @@ -2485,7 +2473,23 @@ axes.drawTitle = function(gd, ax) { x += counterAxis._offset; transform = {rotate: '-90', offset: 0}; - if(!avoid.side) avoid.side = 'left'; + } + + var avoid; + + if(ax.type !== 'multicategory') { + var tickLabels = ax._selections[ax._id + 'tick']; + + avoid = { + selection: tickLabels, + side: ax.side + }; + + if(tickLabels && tickLabels.node() && tickLabels.node().parentNode) { + var translation = Drawing.getTranslate(tickLabels.node().parentNode); + avoid.offsetLeft = translation.x; + avoid.offsetTop = translation.y; + } } Titles.draw(gd, axId + 'title', { From 6dbddc9257cd58a956d8f98028017d218d4bf7bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 27 Nov 2018 15:32:49 -0500 Subject: [PATCH 05/54] small fixup in axis drawTitle() - no need to export it on Axes - return Lib.syncOrAsync result --- src/plots/cartesian/axes.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 1867fb8f27a..94eff184437 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -2429,7 +2429,6 @@ axes.drawLabels = function(gd, ax, opts) { }; function drawTitle(gd, ax) { -axes.drawTitle = function(gd, ax) { var fullLayout = gd._fullLayout; var axId = ax._id; var axLetter = axId.charAt(0); @@ -2457,13 +2456,13 @@ axes.drawTitle = function(gd, ax) { fontSize * (ax.showticklabels ? 1.5 : 0.5); } y += counterAxis._offset; - } - else { + } else { counterAxis = (ax.anchor === 'free') ? {_offset: gs.l + (ax.position || 0) * gs.w, _length: 0} : axisIds.getFromId(gd, ax.anchor); y = ax._offset + ax._length / 2; + if(ax.side === 'right') { x = counterAxis._length + titleStandoff + fontSize * (ax.showticklabels ? 1 : 0.5); @@ -2492,7 +2491,7 @@ axes.drawTitle = function(gd, ax) { } } - Titles.draw(gd, axId + 'title', { + return Titles.draw(gd, axId + 'title', { propContainer: ax, propName: ax._name + '.title.text', placeholder: fullLayout._dfltTitle[axLetter], @@ -2500,7 +2499,7 @@ axes.drawTitle = function(gd, ax) { transform: transform, attributes: {x: x, y: y, 'text-anchor': 'middle'} }); -}; +} axes.shouldShowZeroLine = function(gd, ax, counterAxis) { var rng = Lib.simpleMap(ax.range, ax.r2l); From 5720802362014513cf7c6ee22bbb185b6a13e839 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 27 Nov 2018 15:34:03 -0500 Subject: [PATCH 06/54] mv ax drawTitles() to end of Axes.drawOne - this will allow us to use ax._boundingBox for multicategory axes --- src/plots/cartesian/axes.js | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 94eff184437..45afc91b4fc 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1793,9 +1793,6 @@ axes.drawOne = function(gd, ax, opts) { }); } - if(!opts.skipTitle && - !((ax.rangeslider || {}).visible && ax._boundingBox && ax.side === 'bottom') - ) { // TODO update 'avoid selection' for multicategory seq.push(function() { return axes.drawTitle(gd, ax); @@ -1807,7 +1804,7 @@ axes.drawOne = function(gd, ax, opts) { range[1] = Math.max(range[1], newRange[1]); } - seq.push(function calcBoundingBox() { + function calcBoundingBox() { if(ax.showticklabels) { var gdBB = gd.getBoundingClientRect(); var bBox = mainAxLayer.node().getBoundingClientRect(); @@ -1887,9 +1884,9 @@ axes.drawOne = function(gd, ax, opts) { [ax._boundingBox.right, ax._boundingBox.left]); } } - }); + } - seq.push(function doAutoMargins() { + function doAutoMargins() { var pushKey = ax._name + '.automargin'; if(!ax.automargin) { @@ -1915,7 +1912,15 @@ axes.drawOne = function(gd, ax, opts) { } Plots.autoMargin(gd, pushKey, push); - }); + } + + seq.push(calcBoundingBox, doAutoMargins); + + if(!opts.skipTitle && + !((ax.rangeslider || {}).visible && ax._boundingBox && ax.side === 'bottom') + ) { + seq.push(function() { return drawTitle(gd, ax); }); + } return Lib.syncOrAsync(seq); }; From 0f0661eec584892df34feaaa9dbe5d137813c375 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 27 Nov 2018 15:34:47 -0500 Subject: [PATCH 07/54] stash crispRound ax.gridwidth value on ax._gw ... similar to ax._lw for ax.linewidth. --- src/plots/cartesian/axes.js | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 45afc91b4fc..586c36fb25e 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -2149,11 +2149,11 @@ axes.drawGrid = function(gd, ax, opts) { } }); - ax._gridWidthCrispRound = Drawing.crispRound(gd, ax.gridwidth, 1); + ax._gw = Drawing.crispRound(gd, ax.gridwidth, 1); grid.attr('transform', opts.transFn) .call(Color.stroke, ax.gridcolor || '#ddd') - .style('stroke-width', ax._gridWidthCrispRound + 'px'); + .style('stroke-width', ax._gw + 'px'); if(typeof opts.path === 'function') grid.attr('d', opts.path); }; @@ -2201,14 +2201,9 @@ axes.drawZeroLine = function(gd, ax, opts) { }); }); - var strokeWidth = Drawing.crispRound(gd, - ax.zerolinewidth, - ax._gridWidthCrispRound || 1 - ); - zl.attr('transform', opts.transFn) .call(Color.stroke, ax.zerolinecolor || Color.defaultLine) - .style('stroke-width', strokeWidth + 'px'); + .style('stroke-width', Drawing.crispRound(gd, ax.zerolinewidth, ax._gw || 1) + 'px'); }; /** From 86f710c99304f03b0002ff8cd1a60ed1868e01cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 27 Nov 2018 15:38:31 -0500 Subject: [PATCH 08/54] 2nd look at mutlicategory positioning - compute and use tick-label height to position secondary labels - disallow 30deg tick label rotation when fixing overlaps - use ax._boundingBox to position axis title on multicategory axes. --- src/plots/cartesian/axes.js | 98 ++++++++++++++++++++++--------------- 1 file changed, 58 insertions(+), 40 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 586c36fb25e..0306736bd7a 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1745,23 +1745,25 @@ axes.drawOne = function(gd, ax, opts) { // tick labels - for now just the main labels. // TODO: mirror labels, esp for subplots - var labelFns = axes.makeLabelFns(ax, mainLinePosition); - seq.push(function() { - return axes.drawLabels(gd, ax, { - vals: vals, - layer: mainAxLayer, - transFn: transFn, - labelXFn: labelFns.labelXFn, - labelYFn: labelFns.labelYFn, - labelAnchorFn: labelFns.labelAnchorFn, - }); + seq.push(function() { + var labelFns = axes.makeLabelFns(ax, mainLinePosition); + return axes.drawLabels(gd, ax, { + vals: vals, + layer: mainAxLayer, + transFn: transFn, + labelXFn: labelFns.labelXFn, + labelYFn: labelFns.labelYFn, + labelAnchorFn: labelFns.labelAnchorFn, }); + }); - if(ax.type === 'multicategory') { + if(ax.type === 'multicategory') { + seq.push(function() { + // TODO? // drawDividers() - // TODO move to formatMultiCategory + var secondaryLabelVals = []; var lookup = {}; for(i = 0; i < vals.length; i++) { var d = vals[i]; @@ -1771,31 +1773,41 @@ axes.drawOne = function(gd, ax, opts) { lookup[d.text2] = [d.x]; } } - var secondaryLabelVals = []; for(var k in lookup) { secondaryLabelVals.push(tickTextObj(ax, Lib.interp(lookup[k], 0.5), k)); } - // TODO could do better! - var secondarayPosition = ax._mainLinePosition + {bottom: 20, top: -20}[ax.side]; - var secondaryLabelFns = axes.makeLabelFns(ax, secondarayPosition); + var labelHeight = 0; + ax._selections[ax._id + 'tick'].each(function() { + var thisLabel = selectTickLabel(this); - seq.push(function() { - return axes.drawLabels(gd, ax, { - vals: secondaryLabelVals, - layer: mainAxLayer, - cls: ax._id + 'tick2', - transFn: transFn, - labelXFn: secondaryLabelFns.labelXFn, - labelYFn: secondaryLabelFns.labelYFn, - labelAnchorFn: secondaryLabelFns.labelAnchorFn, - }); + // TODO Drawing.bBox doesn't work when labels are rotated + // var bb = Drawing.bBox(thisLabel.node()); + var bb = thisLabel.node().getBoundingClientRect(); + labelHeight = Math.max(labelHeight, bb.height); }); - } - // TODO update 'avoid selection' for multicategory - seq.push(function() { - return axes.drawTitle(gd, ax); + var secondarayPosition; + if(ax.side === 'bottom') { + secondarayPosition = mainLinePosition + labelHeight + 2; + } else { + secondarayPosition = mainLinePosition - labelHeight - 2; + if(ax.tickfont) { + secondarayPosition -= (ax.tickfont.size * LINE_SPACING); + } + } + + var secondaryLabelFns = axes.makeLabelFns(ax, secondarayPosition); + + return axes.drawLabels(gd, ax, { + vals: secondaryLabelVals, + layer: mainAxLayer, + cls: ax._id + 'tick2', + transFn: transFn, + labelXFn: secondaryLabelFns.labelXFn, + labelYFn: secondaryLabelFns.labelYFn, + labelAnchorFn: secondaryLabelFns.labelAnchorFn, + }); }); } @@ -2360,13 +2372,10 @@ axes.drawLabels = function(gd, ax, opts) { var i; tickLabels.each(function(d) { - var s = d3.select(this); - var thisLabel = s.select('.text-math-group'); - if(thisLabel.empty()) thisLabel = s.select('text'); - maxFontSize = Math.max(maxFontSize, d.fontSize); var x = ax.l2p(d.x); + var thisLabel = selectTickLabel(this); var bb = Drawing.bBox(thisLabel.node()); lbbArray.push({ @@ -2401,12 +2410,12 @@ axes.drawLabels = function(gd, ax, opts) { } else { var vLen = vals.length; var tickSpacing = Math.abs((vals[vLen - 1].x - vals[0].x) * ax._m) / (vLen - 1); - var fitBetweenTicks = tickSpacing < maxFontSize * 2.5; + var rotate90 = (tickSpacing < maxFontSize * 2.5) || ax.type === 'multicategory'; // any overlap at all - set 30 degrees or 90 degrees for(i = 0; i < lbbArray.length - 1; i++) { if(Lib.bBoxIntersect(lbbArray[i], lbbArray[i + 1])) { - autoangle = fitBetweenTicks ? 90 : 30; + autoangle = rotate90 ? 90 : 30; break; } } @@ -2432,15 +2441,18 @@ function drawTitle(gd, ax) { var fullLayout = gd._fullLayout; var axId = ax._id; var axLetter = axId.charAt(0); - var offsetBase = 1.5; var gs = fullLayout._size; var fontSize = ax.title.font.size; - var transform, counterAxis, x, y; + var titleStandoff; + if(ax.type === 'multicategory') { + titleStandoff = ax._boundingBox.height; + } else { + var offsetBase = 1.5; + titleStandoff = 10 + fontSize * offsetBase + (ax.linewidth ? ax.linewidth - 1 : 0); } - var titleStandoff = 10 + fontSize * offsetBase + - (ax.linewidth ? ax.linewidth - 1 : 0); + var transform, counterAxis, x, y; if(axLetter === 'x') { counterAxis = (ax.anchor === 'free') ? @@ -2595,6 +2607,12 @@ function hasBarsOrFill(gd, ax) { return false; } +function selectTickLabel(gTick) { + var s = d3.select(gTick); + var mj = s.select('.text-math-group'); + return mj.empty() ? s.select('text') : mj; +} + /** * Find all margin pushers for 2D axes and reserve them for later use * Both label and rangeslider automargin calculations happen later so From d986f9424a3672da2f89e1a5128ef95737e82367 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 27 Nov 2018 16:18:45 -0500 Subject: [PATCH 09/54] adapt tickon:'boundaries' logic for multicategory axes --- src/plots/cartesian/axes.js | 2 +- src/plots/cartesian/axis_defaults.js | 4 +++- src/plots/cartesian/layout_attributes.js | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 0306736bd7a..e2c5d98e4a9 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -2392,7 +2392,7 @@ axes.drawLabels = function(gd, ax, opts) { var autoangle = 0; - if(ax.tickson === 'boundaries') { + if(ax.tickson === 'boundaries' && cls === ax._id + 'tick') { var gap = 2; if(ax.ticks) gap += ax.tickwidth / 2; diff --git a/src/plots/cartesian/axis_defaults.js b/src/plots/cartesian/axis_defaults.js index 6b8e944b039..8dc692c4d0d 100644 --- a/src/plots/cartesian/axis_defaults.js +++ b/src/plots/cartesian/axis_defaults.js @@ -91,7 +91,9 @@ module.exports = function handleAxisDefaults(containerIn, containerOut, coerce, if(options.automargin) coerce('automargin'); if(!options.noTickson && - containerOut.type === 'category' && (containerOut.ticks || containerOut.showgrid)) { + (containerOut.type === 'category' || containerOut.type === 'multicategory') && + (containerOut.ticks || containerOut.showgrid) + ) { coerce('tickson'); } diff --git a/src/plots/cartesian/layout_attributes.js b/src/plots/cartesian/layout_attributes.js index 5c16a40e36f..887d7274c13 100644 --- a/src/plots/cartesian/layout_attributes.js +++ b/src/plots/cartesian/layout_attributes.js @@ -323,7 +323,7 @@ module.exports = { description: [ 'Determines where ticks and grid lines are drawn with respect to their', 'corresponding tick labels.', - 'Only has an effect for axes of `type` *category*.', + 'Only has an effect for axes of `type` *category* or *multicategory*.', 'When set to *boundaries*, ticks and grid lines are drawn half a category', 'to the left/bottom of labels.' ].join(' ') From c680558a33fb6efb6175688369583a2f5eac2657 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 29 Nov 2018 14:44:11 -0500 Subject: [PATCH 10/54] don't coerce ticktext/tickvals on multicategory axes --- src/plots/cartesian/tick_value_defaults.js | 11 +++-------- test/jasmine/tests/axes_test.js | 8 ++++++++ 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/plots/cartesian/tick_value_defaults.js b/src/plots/cartesian/tick_value_defaults.js index f5aff20aefa..222f729509f 100644 --- a/src/plots/cartesian/tick_value_defaults.js +++ b/src/plots/cartesian/tick_value_defaults.js @@ -6,22 +6,18 @@ * LICENSE file in the root directory of this source tree. */ - 'use strict'; var cleanTicks = require('./clean_ticks'); - module.exports = function handleTickValueDefaults(containerIn, containerOut, coerce, axType) { var tickmode; if(containerIn.tickmode === 'array' && (axType === 'log' || axType === 'date')) { tickmode = containerOut.tickmode = 'auto'; - } - else { - var tickmodeDefault = - Array.isArray(containerIn.tickvals) ? 'array' : + } else { + var tickmodeDefault = Array.isArray(containerIn.tickvals) ? 'array' : containerIn.dtick ? 'linear' : 'auto'; tickmode = coerce('tickmode', tickmodeDefault); @@ -36,8 +32,7 @@ module.exports = function handleTickValueDefaults(containerIn, containerOut, coe containerIn.dtick, axType); containerOut.tick0 = cleanTicks.tick0( containerIn.tick0, axType, containerOut.calendar, dtick); - } - else { + } else if(axType !== 'multicategory') { var tickvals = coerce('tickvals'); if(tickvals === undefined) containerOut.tickmode = 'auto'; else coerce('ticktext'); diff --git a/test/jasmine/tests/axes_test.js b/test/jasmine/tests/axes_test.js index 39969dd2f57..9b833aca443 100644 --- a/test/jasmine/tests/axes_test.js +++ b/test/jasmine/tests/axes_test.js @@ -1347,6 +1347,14 @@ describe('Test axes', function() { expect(axOut.tickvals).toEqual([2, 4, 6, 8]); expect(axOut.ticktext).toEqual(['who', 'do', 'we', 'appreciate']); }); + + it('should not coerce ticktext/tickvals on multicategory axes', function() { + var axIn = {tickvals: [1, 2, 3], ticktext: ['4', '5', '6']}; + var axOut = {}; + mockSupplyDefaults(axIn, axOut, 'multicategory'); + expect(axOut.tickvals).toBe(undefined); + expect(axOut.ticktext).toBe(undefined); + }); }); describe('saveRangeInitial', function() { From 2a9ef876e07d7a86cf0297817d9d660ae389fae6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 29 Nov 2018 15:18:00 -0500 Subject: [PATCH 11/54] mv maxRowLength to lib/array.js, use it it in xy defaults --- src/lib/array.js | 10 ++++++++++ src/lib/index.js | 1 + src/traces/contourcarpet/calc.js | 7 +++---- src/traces/heatmap/calc.js | 3 +-- src/traces/heatmap/find_empties.js | 2 +- src/traces/heatmap/max_row_length.js | 20 -------------------- src/traces/heatmap/plot.js | 4 +--- src/traces/scatter/xy_defaults.js | 7 ++----- 8 files changed, 19 insertions(+), 35 deletions(-) delete mode 100644 src/traces/heatmap/max_row_length.js diff --git a/src/lib/array.js b/src/lib/array.js index a80f4b3f8ca..d68ac84da37 100644 --- a/src/lib/array.js +++ b/src/lib/array.js @@ -132,3 +132,13 @@ exports.concat = function() { } return out; }; + +exports.maxRowLength = function(z) { + var len = 0; + + for(var i = 0; i < z.length; i++) { + len = Math.max(len, z[i].length); + } + + return len; +}; diff --git a/src/lib/index.js b/src/lib/index.js index 2d9de4b1ac1..ef0311d2b82 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -31,6 +31,7 @@ lib.isArrayOrTypedArray = arrayModule.isArrayOrTypedArray; lib.isArray1D = arrayModule.isArray1D; lib.ensureArray = arrayModule.ensureArray; lib.concat = arrayModule.concat; +lib.maxRowLength = arrayModule.maxRowLength; var modModule = require('./mod'); lib.mod = modModule.mod; diff --git a/src/traces/contourcarpet/calc.js b/src/traces/contourcarpet/calc.js index 1a645d5f261..878c481b8de 100644 --- a/src/traces/contourcarpet/calc.js +++ b/src/traces/contourcarpet/calc.js @@ -9,11 +9,10 @@ 'use strict'; var colorscaleCalc = require('../../components/colorscale/calc'); -var isArray1D = require('../../lib').isArray1D; +var Lib = require('../../lib'); var convertColumnData = require('../heatmap/convert_column_xyz'); var clean2dArray = require('../heatmap/clean_2d_array'); -var maxRowLength = require('../heatmap/max_row_length'); var interp2d = require('../heatmap/interp2d'); var findEmpties = require('../heatmap/find_empties'); var makeBoundArray = require('../heatmap/make_bound_array'); @@ -70,7 +69,7 @@ function heatmappishCalc(gd, trace) { aax._minDtick = 0; bax._minDtick = 0; - if(isArray1D(trace.z)) convertColumnData(trace, aax, bax, 'a', 'b', ['z']); + if(Lib.isArray1D(trace.z)) convertColumnData(trace, aax, bax, 'a', 'b', ['z']); a = trace._a = trace._a || trace.a; b = trace._b = trace._b || trace.b; @@ -87,7 +86,7 @@ function heatmappishCalc(gd, trace) { interp2d(z, trace._emptypoints); // create arrays of brick boundaries, to be used by autorange and heatmap.plot - var xlen = maxRowLength(z), + var xlen = Lib.maxRowLength(z), xIn = trace.xtype === 'scaled' ? '' : a, xArray = makeBoundArray(trace, xIn, a0, da, xlen, aax), yIn = trace.ytype === 'scaled' ? '' : b, diff --git a/src/traces/heatmap/calc.js b/src/traces/heatmap/calc.js index 86ebf03aa83..c6c9ad70b1d 100644 --- a/src/traces/heatmap/calc.js +++ b/src/traces/heatmap/calc.js @@ -16,7 +16,6 @@ var Axes = require('../../plots/cartesian/axes'); var histogram2dCalc = require('../histogram2d/calc'); var colorscaleCalc = require('../../components/colorscale/calc'); var convertColumnData = require('./convert_column_xyz'); -var maxRowLength = require('./max_row_length'); var clean2dArray = require('./clean_2d_array'); var interp2d = require('./interp2d'); var findEmpties = require('./find_empties'); @@ -116,7 +115,7 @@ module.exports = function calc(gd, trace) { } // create arrays of brick boundaries, to be used by autorange and heatmap.plot - var xlen = maxRowLength(z); + var xlen = Lib.maxRowLength(z); var xIn = trace.xtype === 'scaled' ? '' : x; var xArray = makeBoundArray(trace, xIn, x0, dx, xlen, xa); var yIn = trace.ytype === 'scaled' ? '' : y; diff --git a/src/traces/heatmap/find_empties.js b/src/traces/heatmap/find_empties.js index df5c442119d..27c9244a420 100644 --- a/src/traces/heatmap/find_empties.js +++ b/src/traces/heatmap/find_empties.js @@ -8,7 +8,7 @@ 'use strict'; -var maxRowLength = require('./max_row_length'); +var maxRowLength = require('../../lib').maxRowLength; /* Return a list of empty points in 2D array z * each empty point z[i][j] gives an array [i, j, neighborCount] diff --git a/src/traces/heatmap/max_row_length.js b/src/traces/heatmap/max_row_length.js deleted file mode 100644 index 44e55256ba2..00000000000 --- a/src/traces/heatmap/max_row_length.js +++ /dev/null @@ -1,20 +0,0 @@ -/** -* Copyright 2012-2018, Plotly, Inc. -* All rights reserved. -* -* This source code is licensed under the MIT license found in the -* LICENSE file in the root directory of this source tree. -*/ - - -'use strict'; - -module.exports = function maxRowLength(z) { - var len = 0; - - for(var i = 0; i < z.length; i++) { - len = Math.max(len, z[i].length); - } - - return len; -}; diff --git a/src/traces/heatmap/plot.js b/src/traces/heatmap/plot.js index 48130d77238..ef309be4f80 100644 --- a/src/traces/heatmap/plot.js +++ b/src/traces/heatmap/plot.js @@ -17,8 +17,6 @@ var Lib = require('../../lib'); var Colorscale = require('../../components/colorscale'); var xmlnsNamespaces = require('../../constants/xmlns_namespaces'); -var maxRowLength = require('./max_row_length'); - module.exports = function(gd, plotinfo, cdheatmaps, heatmapLayer) { var xa = plotinfo.xaxis; var ya = plotinfo.yaxis; @@ -38,7 +36,7 @@ module.exports = function(gd, plotinfo, cdheatmaps, heatmapLayer) { // get z dims var m = z.length; - var n = maxRowLength(z); + var n = Lib.maxRowLength(z); var xrev = false; var yrev = false; diff --git a/src/traces/scatter/xy_defaults.js b/src/traces/scatter/xy_defaults.js index 3b8b929040e..bf35a554bd0 100644 --- a/src/traces/scatter/xy_defaults.js +++ b/src/traces/scatter/xy_defaults.js @@ -9,9 +9,9 @@ 'use strict'; +var Lib = require('../../lib'); var Registry = require('../../registry'); - module.exports = function handleXYDefaults(traceIn, traceOut, layout, coerce) { var x = coerce('x'); var y = coerce('y'); @@ -21,10 +21,7 @@ module.exports = function handleXYDefaults(traceIn, traceOut, layout, coerce) { handleCalendarDefaults(traceIn, traceOut, ['x', 'y'], layout); if(x) { - xlen = Array.isArray(x[0]) ? - x.map(function(c) { return c.length; }) - .sort(function(a, b) { return a - b; })[0] : - x.length; + xlen = Array.isArray(x[0]) ? Lib.maxRowLength(x) : x.length; if(y) { len = Math.min(xlen, y.length); } From f404d9f73abd2be355e72f0c5f40e5680ab9a655 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 29 Nov 2018 17:24:19 -0500 Subject: [PATCH 12/54] add support for multicategory for box and violin traces --- src/traces/box/defaults.js | 5 +- .../baselines/box_grouped-multicategory.png | Bin 0 -> 29319 bytes .../mocks/box_grouped-multicategory.json | 97 ++++++++++++++++++ 3 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 test/image/baselines/box_grouped-multicategory.png create mode 100644 test/image/mocks/box_grouped-multicategory.json diff --git a/src/traces/box/defaults.js b/src/traces/box/defaults.js index dc75d7f1266..ce17bac2dd0 100644 --- a/src/traces/box/defaults.js +++ b/src/traces/box/defaults.js @@ -45,7 +45,10 @@ function handleSampleDefaults(traceIn, traceOut, coerce, layout) { if(y && y.length) { defaultOrientation = 'v'; if(hasX) { - len = Math.min(x.length, y.length); + len = Math.min( + Array.isArray(x[0]) ? Lib.maxRowLength(x) : x.length, + y.length + ); } else { coerce('x0'); diff --git a/test/image/baselines/box_grouped-multicategory.png b/test/image/baselines/box_grouped-multicategory.png new file mode 100644 index 0000000000000000000000000000000000000000..24fd0e95da8d4dd5bdc60684c6ea3cec9ac44e64 GIT binary patch literal 29319 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 literal 0 HcmV?d00001 diff --git a/test/image/mocks/box_grouped-multicategory.json b/test/image/mocks/box_grouped-multicategory.json new file mode 100644 index 00000000000..a8043df6245 --- /dev/null +++ b/test/image/mocks/box_grouped-multicategory.json @@ -0,0 +1,97 @@ +{ + "data":[ + { + "y":[ + 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3, + 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, + 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3 + ], + "x":[ + ["2016", "2016", "2016", "2016", "2016", "2016", + "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", + "2017", "2017", "2017", "2017", "2017", "2017", + "2018", "2018", "2018", "2018", "2018", "2018", + "2018", "2018", "2018", "2018", "2018", "2018"], + + ["day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2"] + ], + "name":"kale", + "marker":{ + "color":"#3D9970" + }, + "type":"box" + }, + { + "y":[ + 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, + 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, + 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 + ], + "x":[ + ["2016", "2016", "2016", "2016", "2016", "2016", + "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", + "2017", "2017", "2017", "2017", "2017", "2017", + "2018", "2018", "2018", "2018", "2018", "2018", + "2018", "2018", "2018", "2018", "2018", "2018"], + + ["day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2"] + ], + "name":"radishes", + "marker":{ + "color":"#FF4136" + }, + "type":"box" + }, + { + "y":[ + 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, + 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, + 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3 + ], + "x":[ + ["2016", "2016", "2016", "2016", "2016", "2016", + "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", + "2017", "2017", "2017", "2017", "2017", "2017", + "2018", "2018", "2018", "2018", "2018", "2018", + "2018", "2018", "2018", "2018", "2018", "2018"], + + ["day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2"] + ], + "name":"carrots", + "marker":{ + "color":"#FF851B" + }, + "type":"box" + } + ], + "layout":{ + "yaxis":{ + "zeroline":false, + "title":"normalized moisture" + }, + "boxmode":"group", + "legend": { + "x": 0, + "y": 1, + "yanchor": "bottom" + } + } +} From 93323b857126114e4e903d992e86eb4d5b371757 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Fri, 30 Nov 2018 11:48:32 -0500 Subject: [PATCH 13/54] add support for axis dividers --- src/plots/cartesian/axes.js | 217 ++++++++++++++++------- src/plots/cartesian/axis_defaults.js | 8 + src/plots/cartesian/layout_attributes.js | 34 ++++ 3 files changed, 193 insertions(+), 66 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index e2c5d98e4a9..a1c4e951946 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -979,7 +979,7 @@ axes.tickText = function(ax, x, hover) { // Setup ticks and grid lines boundaries // at 1/2 a 'category' to the left/bottom - if(ax.tickson === 'boundaries') { + if(ax.tickson === 'boundaries' || ax.showdividers) { var inbounds = function(v) { var p = ax.l2p(v); return p >= 0 && p <= ax._length ? v : null; @@ -1583,6 +1583,7 @@ axes.draw = function(gd, arg, opts) { plotinfo.yaxislayer.selectAll('.' + ya._id + 'tick').remove(); if(xa.type === 'multicategory') { plotinfo.xaxislayer.selectAll('.' + xa._id + 'tick2').remove(); + plotinfo.xaxislayer.selectAll('.' + xa._id + 'divider').remove(); } if(plotinfo.gridlayer) plotinfo.gridlayer.selectAll('path').remove(); if(plotinfo.zerolinelayer) plotinfo.zerolinelayer.selectAll('path').remove(); @@ -1642,36 +1643,21 @@ axes.drawOne = function(gd, ax, opts) { ax._selections = {}; var transFn = axes.makeTransFn(ax); - + var tickVals; // We remove zero lines, grid lines, and inside ticks if they're within 1px of the end // The key case here is removing zero lines when the axis bound is zero var valsClipped; - var tickVals; - var gridVals; if(ax.tickson === 'boundaries' && vals.length) { - // valsBoundaries is not used for labels; - // no need to worry about the other tickTextObj keys - var valsBoundaries = []; - var _push = function(d, bndIndex) { - var xb = d.xbnd[bndIndex]; - if(xb !== null) { - valsBoundaries.push(Lib.extendFlat({}, d, {x: xb})); - } - }; - for(i = 0; i < vals.length; i++) _push(vals[i], 0); - _push(vals[i - 1], 1); - - valsClipped = axes.clipEnds(ax, valsBoundaries); - tickVals = ax.ticks === 'inside' ? valsClipped : valsBoundaries; - gridVals = valsClipped; + var boundaryVals = getBoundaryVals(ax, vals); + valsClipped = axes.clipEnds(ax, boundaryVals); + tickVals = ax.ticks === 'inside' ? valsClipped : boundaryVals; } else { valsClipped = axes.clipEnds(ax, vals); tickVals = ax.ticks === 'inside' ? valsClipped : vals; - gridVals = valsClipped; } - ax._valsClipped = valsClipped; + var gridVals = ax._gridVals = valsClipped; if(!fullLayout._hasOnlyLargeSploms) { // keep track of which subplots (by main conteraxis) we've already @@ -1759,56 +1745,35 @@ axes.drawOne = function(gd, ax, opts) { }); if(ax.type === 'multicategory') { - seq.push(function() { - // TODO? - // drawDividers() - - var secondaryLabelVals = []; - var lookup = {}; - for(i = 0; i < vals.length; i++) { - var d = vals[i]; - if(lookup[d.text2]) { - lookup[d.text2].push(d.x); - } else { - lookup[d.text2] = [d.x]; - } - } - for(var k in lookup) { - secondaryLabelVals.push(tickTextObj(ax, Lib.interp(lookup[k], 0.5), k)); - } + var labelLength = 0; - var labelHeight = 0; - ax._selections[ax._id + 'tick'].each(function() { - var thisLabel = selectTickLabel(this); - - // TODO Drawing.bBox doesn't work when labels are rotated - // var bb = Drawing.bBox(thisLabel.node()); - var bb = thisLabel.node().getBoundingClientRect(); - labelHeight = Math.max(labelHeight, bb.height); - }); - - var secondarayPosition; - if(ax.side === 'bottom') { - secondarayPosition = mainLinePosition + labelHeight + 2; - } else { - secondarayPosition = mainLinePosition - labelHeight - 2; - if(ax.tickfont) { - secondarayPosition -= (ax.tickfont.size * LINE_SPACING); - } - } - - var secondaryLabelFns = axes.makeLabelFns(ax, secondarayPosition); + seq.push(function() { + labelLength += getLabelLevelSpan(ax._selections[axId + 'tick']) + 2; + labelLength += ax._lastangle ? ax.tickfont.size * LINE_SPACING : 0; + var secondaryPosition = mainLinePosition + labelLength * tickSigns[2]; + var secondaryLabelFns = axes.makeLabelFns(ax, secondaryPosition); return axes.drawLabels(gd, ax, { - vals: secondaryLabelVals, + vals: getSecondaryLabelVals(ax, vals), layer: mainAxLayer, - cls: ax._id + 'tick2', + cls: axId + 'tick2', transFn: transFn, labelXFn: secondaryLabelFns.labelXFn, labelYFn: secondaryLabelFns.labelYFn, labelAnchorFn: secondaryLabelFns.labelAnchorFn, }); }); + + seq.push(function() { + labelLength += getLabelLevelSpan(ax._selections[axId + 'tick2']) + 2; + + return drawDividers(gd, ax, { + vals: getDividerVals(ax, vals), + layer: mainAxLayer, + path: axes.makeTickPath(ax, mainLinePosition, tickSigns[2], labelLength), + transFn: transFn + }); + }); } function extendRange(range, newRange) { @@ -1937,6 +1902,87 @@ axes.drawOne = function(gd, ax, opts) { return Lib.syncOrAsync(seq); }; +function getBoundaryVals(ax, vals) { + var out = []; + var i; + + // boundaryVals are never used for labels; + // no need to worry about the other tickTextObj keys + var _push = function(d, bndIndex) { + var xb = d.xbnd[bndIndex]; + if(xb !== null) { + out.push(Lib.extendFlat({}, d, {x: xb})); + } + }; + + for(i = 0; i < vals.length; i++) { + _push(vals[i], 0); + } + _push(vals[i - 1], 1); + + return out; +} + +function getSecondaryLabelVals(ax, vals) { + var out = []; + var lookup = {}; + + for(var i = 0; i < vals.length; i++) { + var d = vals[i]; + if(lookup[d.text2]) { + lookup[d.text2].push(d.x); + } else { + lookup[d.text2] = [d.x]; + } + } + + for(var k in lookup) { + out.push(tickTextObj(ax, Lib.interp(lookup[k], 0.5), k)); + } + + return out; +} + +function getDividerVals(ax, vals) { + var out = []; + var i, current; + + // never used for labels; + // no need to worry about the other tickTextObj keys + var _push = function(d, bndIndex) { + var xb = d.xbnd[bndIndex]; + if(xb !== null) { + out.push(Lib.extendFlat({}, d, {x: xb})); + } + }; + + for(i = 0; i < vals.length; i++) { + var d = vals[i]; + if(d.text2 !== current) { + _push(d, 0); + } + current = d.text2; + } + _push(vals[i - 1], 1); + + return out; +} + +function getLabelLevelSpan(tickLabels) { + var out = 2; + + tickLabels.each(function() { + var thisLabel = selectTickLabel(this); + + // TODO Drawing.bBox doesn't work when labels are rotated + // var bb = Drawing.bBox(thisLabel.node()); + var bb = thisLabel.node().getBoundingClientRect(); + out = Math.max(out, bb.height); + }); + + return out; +} + /** * Which direction do the 'ax.side' values, and free ticks go? * @@ -1988,12 +2034,15 @@ axes.makeTransFn = function(ax) { * - {number} linewidth * @param {number} shift along direction of ticklen * @param {1 or -1} sng tick sign + * @param {number (optional)} len tick length * @return {string} */ -axes.makeTickPath = function(ax, shift, sgn) { +axes.makeTickPath = function(ax, shift, sgn, len) { + len = len !== undefined ? len : ax.ticklen; + var axLetter = ax._id.charAt(0); var pad = (ax.linewidth || 1) / 2; - var len = ax.ticklen; + return axLetter === 'x' ? 'M0,' + (shift + pad * sgn) + 'v' + (len * sgn) : 'M' + (shift + pad * sgn) + ',0h' + (len * sgn); @@ -2181,7 +2230,6 @@ axes.drawGrid = function(gd, ax, opts) { * - {string} zerolinecolor * - {number (optional)} _gridWidthCrispRound * @param {object} opts - * - {array of object} vals (calcTicks output-like) * - {d3 selection} layer * - {object} counterAxis (full axis object corresponding to counter axis) * - {string or fn} path @@ -2392,10 +2440,12 @@ axes.drawLabels = function(gd, ax, opts) { var autoangle = 0; - if(ax.tickson === 'boundaries' && cls === ax._id + 'tick') { + if((ax.tickson === 'boundaries' || ax.showdividers) && cls === ax._id + 'tick') { var gap = 2; if(ax.ticks) gap += ax.tickwidth / 2; + // TODO should secondary labels also fall into this fix-overlap regime? + for(i = 0; i < lbbArray.length; i++) { var xbnd = vals[i].xbnd; var lbb = lbbArray[i]; @@ -2437,6 +2487,41 @@ axes.drawLabels = function(gd, ax, opts) { return done; }; +/** + * Draw axis dividers + * + * @param {DOM element} gd + * @param {object} ax (full) axis object + * - {string} _id + * - {string} showdividers + * - {number} dividerwidth + * - {string} dividercolor + * @param {object} opts + * - {array of object} vals (calcTicks output-like) + * - {d3 selection} layer + * - {fn} path + * - {fn} transFn + */ +function drawDividers(gd, ax, opts) { + var cls = ax._id + 'divider'; + var vals = opts.vals; + + var dividers = opts.layer.selectAll('path.' + cls) + .data(ax.showdividers ? vals : [], makeDataFn(ax)); + + dividers.exit().remove(); + + dividers.enter().insert('path', ':first-child') + .classed(cls, 1) + .classed('crisp', 1) + .call(Color.stroke, ax.dividercolor) + .style('stroke-width', Drawing.crispRound(gd, ax.dividerwidth, 1) + 'px'); + + dividers + .attr('transform', opts.transFn) + .attr('d', opts.path); +} + function drawTitle(gd, ax) { var fullLayout = gd._fullLayout; var axId = ax._id; @@ -2519,7 +2604,7 @@ axes.shouldShowZeroLine = function(gd, ax, counterAxis) { (rng[0] * rng[1] <= 0) && ax.zeroline && (ax.type === 'linear' || ax.type === '-') && - ax._valsClipped.length && + ax._gridVals.length && ( clipEnds(ax, 0) || !anyCounterAxLineAtZero(gd, ax, counterAxis, rng) || diff --git a/src/plots/cartesian/axis_defaults.js b/src/plots/cartesian/axis_defaults.js index 8dc692c4d0d..343d6a22ff2 100644 --- a/src/plots/cartesian/axis_defaults.js +++ b/src/plots/cartesian/axis_defaults.js @@ -97,5 +97,13 @@ module.exports = function handleAxisDefaults(containerIn, containerOut, coerce, coerce('tickson'); } + if(containerOut.type === 'multicategory') { + var showDividers = coerce('showdividers'); + if(showDividers) { + coerce('dividercolor'); + coerce('dividerwidth'); + } + } + return containerOut; }; diff --git a/src/plots/cartesian/layout_attributes.js b/src/plots/cartesian/layout_attributes.js index 887d7274c13..d98b10f7dea 100644 --- a/src/plots/cartesian/layout_attributes.js +++ b/src/plots/cartesian/layout_attributes.js @@ -666,6 +666,40 @@ module.exports = { editType: 'ticks', description: 'Sets the width (in px) of the zero line.' }, + + showdividers: { + valType: 'boolean', + dflt: true, + role: 'style', + editType: 'ticks', + description: [ + 'Determines whether or not a dividers are drawn', + 'between the category levels of this axis.', + 'Only has an effect on *multicategory* axes.' + ].join(' ') + }, + dividercolor: { + valType: 'color', + dflt: colorAttrs.defaultLine, + role: 'style', + editType: 'ticks', + description: [ + 'Sets the color of the dividers', + 'Only has an effect on *multicategory* axes.' + ].join(' ') + }, + dividerwidth: { + valType: 'number', + dflt: 1, + role: 'style', + editType: 'ticks', + description: [ + 'Sets the width (in px) of the dividers', + 'Only has an effect on *multicategory* axes.' + ].join(' ') + }, + // TODO dividerlen: that would override "to label base" length? + // positioning attributes // anchor: not used directly, just put here for reference // values are any opposite-letter axis id From 73f0365063626141402a5e45e31bae0ed52ee978 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 27 Nov 2018 16:22:57 -0500 Subject: [PATCH 14/54] :three: multicategory mocks --- .../baselines/box_grouped-multicategory.png | Bin 29319 -> 29292 bytes test/image/baselines/multicategory.png | Bin 0 -> 24943 bytes test/image/baselines/multicategory2.png | Bin 0 -> 24926 bytes test/image/mocks/multicategory.json | 28 ++++++++++++++ test/image/mocks/multicategory2.json | 36 ++++++++++++++++++ 5 files changed, 64 insertions(+) create mode 100644 test/image/baselines/multicategory.png create mode 100644 test/image/baselines/multicategory2.png create mode 100644 test/image/mocks/multicategory.json create mode 100644 test/image/mocks/multicategory2.json diff --git a/test/image/baselines/box_grouped-multicategory.png b/test/image/baselines/box_grouped-multicategory.png index 24fd0e95da8d4dd5bdc60684c6ea3cec9ac44e64..5e2a69b60bde1e69be3e81b7a287ee5a4101648a 100644 GIT binary patch literal 29292 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 literal 29319 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 diff --git a/test/image/baselines/multicategory.png b/test/image/baselines/multicategory.png new file mode 100644 index 0000000000000000000000000000000000000000..b59ad27d3d09992d8ac044b7b98cdd87b4d0c187 GIT binary patch literal 24943 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 WqMIOYW?UwK|5Oz<6-wo9`29Eew;Oi= literal 0 HcmV?d00001 diff --git a/test/image/baselines/multicategory2.png b/test/image/baselines/multicategory2.png new file mode 100644 index 0000000000000000000000000000000000000000..f99b84cf988f115c6b0c9d0e9b239c138b9e1e57 GIT binary patch literal 24926 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�(&EGII@T#XfbTV_%%Vc9UFcf9=ad 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 literal 0 HcmV?d00001 diff --git a/test/image/mocks/multicategory.json b/test/image/mocks/multicategory.json new file mode 100644 index 00000000000..15f0f52ae1c --- /dev/null +++ b/test/image/mocks/multicategory.json @@ -0,0 +1,28 @@ +{ + "data": [ + { + "type": "bar", + "x": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "q2", "q3", "q4", "q1", "q2", "q3" ] + ], + "y": [1, 2, 3, 1, 3, 2, 3, 1] + }, + { + "type": "bar", + "x": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "q2", "q3", "q4", "q1", "q2", "q3"] + ], + "y": [1.12, 2.15, 3.07, 1.48, 2.78, 1.95, 2.54, 0.64] + } + ], + "layout": { + "xaxis": { + "title": "MULTI-CATEGORY", + "tickfont": {"size": 16}, + "ticks": "outside", + "tickson": "boundaries" + } + } +} diff --git a/test/image/mocks/multicategory2.json b/test/image/mocks/multicategory2.json new file mode 100644 index 00000000000..c54caba7bcc --- /dev/null +++ b/test/image/mocks/multicategory2.json @@ -0,0 +1,36 @@ +{ + "data": [ + { + "mode": "markers", + "marker": { + "symbol": "square" + }, + "x": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "looooooooooooooooong", "q3", "q4", "q1", "q2", "q3"] + ], + "y": [1, 2, 3, 1, 3, 2, 3, 1] + }, + { + "mode": "markers", + "marker": { + "symbol": "square" + }, + "x": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "looooooooooooooooong", "q3", "q4", "q1", "q2", "q3"] + ], + "y": [0.63, 2.17, 3.11, 1.07, 3.08, 1.94, 2.55, 0.59] + } + ], + "layout": { + "xaxis": { + "title": "MULTI-CATEGORY ON TOP", + "side": "top" + }, + "showlegend": false, + "width": 400, + "height": 800, + "margin": {"b": 40, "t": 200} + } +} From 660a546a8b80cfb30b6876e1ee8dcdc5b077da4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 4 Dec 2018 13:59:22 -0500 Subject: [PATCH 15/54] fix showdividers:false logic --- src/plots/cartesian/axes.js | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index a1c4e951946..9c208eaad67 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1648,7 +1648,7 @@ axes.drawOne = function(gd, ax, opts) { // The key case here is removing zero lines when the axis bound is zero var valsClipped; - if(ax.tickson === 'boundaries' && vals.length) { + if(ax.tickson === 'boundaries') { var boundaryVals = getBoundaryVals(ax, vals); valsClipped = axes.clipEnds(ax, boundaryVals); tickVals = ax.ticks === 'inside' ? valsClipped : boundaryVals; @@ -1915,10 +1915,12 @@ function getBoundaryVals(ax, vals) { } }; - for(i = 0; i < vals.length; i++) { - _push(vals[i], 0); + if(vals.length) { + for(i = 0; i < vals.length; i++) { + _push(vals[i], 0); + } + _push(vals[i - 1], 1); } - _push(vals[i - 1], 1); return out; } @@ -1956,14 +1958,16 @@ function getDividerVals(ax, vals) { } }; - for(i = 0; i < vals.length; i++) { - var d = vals[i]; - if(d.text2 !== current) { - _push(d, 0); + if(ax.showdividers && vals.length) { + for(i = 0; i < vals.length; i++) { + var d = vals[i]; + if(d.text2 !== current) { + _push(d, 0); + } + current = d.text2; } - current = d.text2; + _push(vals[i - 1], 1); } - _push(vals[i - 1], 1); return out; } @@ -2507,7 +2511,7 @@ function drawDividers(gd, ax, opts) { var vals = opts.vals; var dividers = opts.layer.selectAll('path.' + cls) - .data(ax.showdividers ? vals : [], makeDataFn(ax)); + .data(vals, makeDataFn(ax)); dividers.exit().remove(); From 1a4c95e148f956bba474cd43f7d57e182733093d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Fri, 30 Nov 2018 16:39:22 -0500 Subject: [PATCH 16/54] generalize Lib.maxRowLength - make it return z.length if z is 1D - make it return 0 when not an array --- src/lib/array.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/lib/array.js b/src/lib/array.js index d68ac84da37..5541c4026f1 100644 --- a/src/lib/array.js +++ b/src/lib/array.js @@ -136,8 +136,14 @@ exports.concat = function() { exports.maxRowLength = function(z) { var len = 0; - for(var i = 0; i < z.length; i++) { - len = Math.max(len, z[i].length); + if(isArrayOrTypedArray(z)) { + if(Array.isArray(z[0])) { + for(var i = 0; i < z.length; i++) { + len = Math.max(len, z[i].length); + } + } else { + len = z.length; + } } return len; From 48df69940f9f6b3fc7e9988172d70eccce0d2a3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Mon, 3 Dec 2018 18:00:24 -0500 Subject: [PATCH 17/54] add a some potential TODOs --- src/plots/cartesian/axes.js | 2 +- src/traces/bar/cross_trace_calc.js | 2 ++ src/traces/box/calc.js | 1 + src/traces/heatmap/convert_column_xyz.js | 1 + src/traces/heatmap/make_bound_array.js | 1 + src/traces/violin/calc.js | 1 + 6 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 9c208eaad67..0210ead0ac1 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -157,7 +157,7 @@ var getDataConversions = axes.getDataConversions = function(gd, trace, target, t ax.d2c(targetArray[i]); } } - // TODO? + // TODO what to do for transforms? } else { ax = axes.getFromTrace(gd, trace, d2cTarget); } diff --git a/src/traces/bar/cross_trace_calc.js b/src/traces/bar/cross_trace_calc.js index e80255413b4..66a2d3d3623 100644 --- a/src/traces/bar/cross_trace_calc.js +++ b/src/traces/bar/cross_trace_calc.js @@ -126,6 +126,8 @@ function initBase(gd, pa, sa, calcTraces) { // time. But included here for completeness. var scalendar = trace.orientation === 'h' ? trace.xcalendar : trace.ycalendar; + // TODO skip for multicategory size axis? + if(isArrayOrTypedArray(base)) { for(j = 0; j < Math.min(base.length, cd.length); j++) { b = sa.d2c(base[j], 0, scalendar); diff --git a/src/traces/box/calc.js b/src/traces/box/calc.js index 095048f19a7..74ff33916c6 100644 --- a/src/traces/box/calc.js +++ b/src/traces/box/calc.js @@ -178,6 +178,7 @@ function getPos(trace, posLetter, posAxis, val, num) { pos0 = num; } + // TODO what to do on multicategory posAxis? var pos0c = posAxis.d2c(pos0, 0, trace[posLetter + 'calendar']); return val.map(function() { return pos0c; }); } diff --git a/src/traces/heatmap/convert_column_xyz.js b/src/traces/heatmap/convert_column_xyz.js index 57638ace45e..5bff912ba6e 100644 --- a/src/traces/heatmap/convert_column_xyz.js +++ b/src/traces/heatmap/convert_column_xyz.js @@ -23,6 +23,7 @@ module.exports = function convertColumnData(trace, ax1, ax2, var1Name, var2Name, var i, j, arrayVar, newArray, arrayVarName; + // TODO use makeCalcdata to make this work for multicategory? for(i = 0; i < colLen; i++) { col1[i] = ax1.d2c(col1[i], 0, col1Calendar); col2[i] = ax2.d2c(col2[i], 0, col2Calendar); diff --git a/src/traces/heatmap/make_bound_array.js b/src/traces/heatmap/make_bound_array.js index bf0e67b7a9d..7bc8c4514df 100644 --- a/src/traces/heatmap/make_bound_array.js +++ b/src/traces/heatmap/make_bound_array.js @@ -71,6 +71,7 @@ module.exports = function makeBoundArray(trace, arrayIn, v0In, dvIn, numbricks, else if(isArrayOrTypedArray(arrayIn) && arrayIn.length === 1) v0 = arrayIn[0]; else if(v0In === undefined) v0 = 0; else v0 = ax.d2c(v0In, 0, calendar); + // TODO what to do for multicategory? for(i = (isContour || isGL2D) ? 0 : -0.5; i < numbricks; i++) { arrayOut.push(v0 + dv * i); diff --git a/src/traces/violin/calc.js b/src/traces/violin/calc.js index 1994f4235c3..46193bcea99 100644 --- a/src/traces/violin/calc.js +++ b/src/traces/violin/calc.js @@ -123,6 +123,7 @@ function calcSpan(trace, cdi, valAxis, bandwidth) { function calcSpanItem(index) { var s = spanIn[index]; + // TODO skip on multicategory val axis? var sc = valAxis.d2c(s, 0, trace[cdi.valLetter + 'calendar']); return sc === BADNUM ? spanLoose[index] : sc; } From 701f7937e0089090542d71827598c7eefc7c52a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 5 Dec 2018 16:41:39 -0500 Subject: [PATCH 18/54] add Lib.minRowLength and use it to find trace._length - mea culpa: no need to keep track of max-row-length for multicategory coordinate array, min-row-length suffices. --- src/lib/array.js | 19 ++++++--- src/lib/index.js | 1 + src/traces/box/defaults.js | 8 +--- src/traces/scatter/xy_defaults.js | 15 +++---- test/jasmine/tests/scatter_test.js | 66 ++++++++++++++++++++++++++++++ 5 files changed, 88 insertions(+), 21 deletions(-) diff --git a/src/lib/array.js b/src/lib/array.js index 5541c4026f1..529aa713915 100644 --- a/src/lib/array.js +++ b/src/lib/array.js @@ -134,17 +134,24 @@ exports.concat = function() { }; exports.maxRowLength = function(z) { - var len = 0; + return _rowLength(z, Math.max, 0); +}; + +exports.minRowLength = function(z) { + return _rowLength(z, Math.min, Infinity); +}; +function _rowLength(z, fn, len0) { if(isArrayOrTypedArray(z)) { if(Array.isArray(z[0])) { + var len = len0; for(var i = 0; i < z.length; i++) { - len = Math.max(len, z[i].length); + len = fn(len, z[i].length); } + return len; } else { - len = z.length; + return z.length; } } - - return len; -}; + return 0; +} diff --git a/src/lib/index.js b/src/lib/index.js index ef0311d2b82..9c3d46c7841 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -32,6 +32,7 @@ lib.isArray1D = arrayModule.isArray1D; lib.ensureArray = arrayModule.ensureArray; lib.concat = arrayModule.concat; lib.maxRowLength = arrayModule.maxRowLength; +lib.minRowLength = arrayModule.minRowLength; var modModule = require('./mod'); lib.mod = modModule.mod; diff --git a/src/traces/box/defaults.js b/src/traces/box/defaults.js index ce17bac2dd0..2175387fbf3 100644 --- a/src/traces/box/defaults.js +++ b/src/traces/box/defaults.js @@ -45,12 +45,8 @@ function handleSampleDefaults(traceIn, traceOut, coerce, layout) { if(y && y.length) { defaultOrientation = 'v'; if(hasX) { - len = Math.min( - Array.isArray(x[0]) ? Lib.maxRowLength(x) : x.length, - y.length - ); - } - else { + len = Math.min(Lib.minRowLength(x), Lib.minRowLength(y)); + } else { coerce('x0'); len = y.length; } diff --git a/src/traces/scatter/xy_defaults.js b/src/traces/scatter/xy_defaults.js index bf35a554bd0..b5ef293ee09 100644 --- a/src/traces/scatter/xy_defaults.js +++ b/src/traces/scatter/xy_defaults.js @@ -6,7 +6,6 @@ * LICENSE file in the root directory of this source tree. */ - 'use strict'; var Lib = require('../../lib'); @@ -15,26 +14,24 @@ var Registry = require('../../registry'); module.exports = function handleXYDefaults(traceIn, traceOut, layout, coerce) { var x = coerce('x'); var y = coerce('y'); - var len, xlen; + var len; var handleCalendarDefaults = Registry.getComponentMethod('calendars', 'handleTraceDefaults'); handleCalendarDefaults(traceIn, traceOut, ['x', 'y'], layout); if(x) { - xlen = Array.isArray(x[0]) ? Lib.maxRowLength(x) : x.length; + var xlen = Lib.minRowLength(x); if(y) { - len = Math.min(xlen, y.length); - } - else { + len = Math.min(xlen, Lib.minRowLength(y)); + } else { len = xlen; coerce('y0'); coerce('dy'); } - } - else { + } else { if(!y) return 0; - len = traceOut.y.length; + len = Lib.minRowLength(y); coerce('x0'); coerce('dx'); } diff --git a/test/jasmine/tests/scatter_test.js b/test/jasmine/tests/scatter_test.js index 19dea8d9ffd..6e97b1531b1 100644 --- a/test/jasmine/tests/scatter_test.js +++ b/test/jasmine/tests/scatter_test.js @@ -203,6 +203,72 @@ describe('Test scatter', function() { }); }); + describe('should find correct coordinate length', function() { + function _supply() { + supplyDefaults(traceIn, traceOut, defaultColor, layout); + } + + it('- x 2d', function() { + traceIn = { + x: [ + ['1', '2', '1', '2', '1', '2'], + ['a', 'a', 'b', 'b'] + ], + }; + _supply(); + expect(traceOut._length).toBe(4); + }); + + it('- y 2d', function() { + traceIn = { + y: [ + ['1', '2', '1', '2', '1', '2'], + ['a', 'a', 'b', 'b'] + ], + }; + _supply(); + expect(traceOut._length).toBe(4); + }); + + it('- x 2d / y 1d', function() { + traceIn = { + x: [ + ['1', '2', '1', '2', '1', '2'], + ['a', 'a', 'b', 'b'] + ], + y: [1, 2, 3, 4, 5, 6] + }; + _supply(); + expect(traceOut._length).toBe(4); + }); + + it('- x 1d / y 2d', function() { + traceIn = { + y: [ + ['1', '2', '1', '2', '1', '2'], + ['a', 'a', 'b', 'b'] + ], + x: [1, 2, 3, 4, 5, 6] + }; + _supply(); + expect(traceOut._length).toBe(4); + }); + + it('- x 2d / y 2d', function() { + traceIn = { + x: [ + ['1', '2', '1', '2', '1', '2'], + ['a', 'a', 'b', 'b', 'c', 'c'] + ], + y: [ + ['1', '2', '1', '2', '1', '2'], + ['a', 'a', 'b', 'b', 'c', 'c', 'd', 'd'] + ] + }; + _supply(); + expect(traceOut._length).toBe(6); + }); + }); }); describe('isBubble', function() { From 016846aaff6b9f0e96eef559455d85dda7325c4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 5 Dec 2018 16:44:20 -0500 Subject: [PATCH 19/54] improve multicategory ax.makeCalcdata - make sure calc'ed arrays are sorted properly - handle null and undefined item correctly - handle non-2d-array input correctly - test 2d-array input on non-multicategory axes --- src/plots/cartesian/set_convert.js | 75 +++++++++++++++++------- test/jasmine/tests/axes_test.js | 93 ++++++++++++++++++++++++++++++ 2 files changed, 147 insertions(+), 21 deletions(-) diff --git a/src/plots/cartesian/set_convert.js b/src/plots/cartesian/set_convert.js index f805e627d31..d22fa83d273 100644 --- a/src/plots/cartesian/set_convert.js +++ b/src/plots/cartesian/set_convert.js @@ -30,6 +30,10 @@ function fromLog(v) { return Math.pow(10, v); } +function isValidCategory(v) { + return v !== null && v !== undefined; +} + /** * Define the conversion functions for an axis data is used in 5 ways: * @@ -123,7 +127,7 @@ module.exports = function setConvert(ax, fullLayout) { * a disconnect between the array and the index returned */ function setCategoryIndex(v) { - if(v !== null && v !== undefined) { + if(isValidCategory(v)) { if(ax._categoriesMap === undefined) { ax._categoriesMap = {}; } @@ -142,6 +146,47 @@ module.exports = function setConvert(ax, fullLayout) { return BADNUM; } + function setMultiCategoryIndex(arrayIn, len) { + var arrayOut = new Array(len); + var i; + + // [ [arrayIn[0][i], arrayIn[1][i]], for i .. len ] + var tmp = new Array(len); + // [ [cnt, {$cat: index}], for j .. arrayIn.length ] + var seen = [[0, {}], [0, {}]]; + + if(Array.isArray(arrayIn[0]) && Array.isArray(arrayIn[1])) { + for(i = 0; i < len; i++) { + var v0 = arrayIn[0][i]; + var v1 = arrayIn[1][i]; + if(isValidCategory(v0) && isValidCategory(v1)) { + tmp[i] = [v0, v1]; + if(!(v0 in seen[0][1])) { + seen[0][1][v0] = seen[0][0]++; + } + if(!(v1 in seen[1][1])) { + seen[1][1][v1] = seen[1][0]++; + } + } + } + + tmp.sort(function(a, b) { + var ind0 = seen[0][1]; + var d = ind0[a[0]] - ind0[b[0]]; + if(d) return d; + + var ind1 = seen[1][1]; + return ind1[a[1]] - ind1[b[1]]; + }); + } + + for(i = 0; i < len; i++) { + arrayOut[i] = setCategoryIndex(tmp[i]); + } + + return arrayOut; + } + function getCategoryIndex(v) { // d2l/d2c variant that that won't add categories but will also // allow numbers to be mapped to the linearized axis positions @@ -423,14 +468,14 @@ module.exports = function setConvert(ax, fullLayout) { // in case the expected data isn't there, make a list of // integers based on the opposite data ax.makeCalcdata = function(trace, axLetter) { - var arrayIn, arrayOut, i, j, len; + var arrayIn, arrayOut, i, len; var axType = ax.type; var cal = axType === 'date' && trace[axLetter + 'calendar']; if(axLetter in trace) { arrayIn = trace[axLetter]; - len = trace._length || arrayIn.length; + len = trace._length || Lib.minRowLength(arrayIn); if(Lib.isTypedArray(arrayIn) && (axType === 'linear' || axType === 'log')) { if(len === arrayIn.length) { @@ -440,25 +485,13 @@ module.exports = function setConvert(ax, fullLayout) { } } - arrayOut = new Array(len); if(axType === 'multicategory') { - var tmp = new Array(len); - for(j = 0; j < arrayIn.length; j++) { - if(Array.isArray(arrayIn[j])) { - for(i = 0; i < len; i++) { - var v = arrayIn[j][i]; - if(j) tmp[i].push(v); - else tmp[i] = [v]; - } - } - } - for(i = 0; i < len; i++) { - arrayOut[i] = setCategoryIndex(tmp[i]); - } - } else { - for(i = 0; i < len; i++) { - arrayOut[i] = ax.d2c(arrayIn[i], 0, cal); - } + return setMultiCategoryIndex(arrayIn, len); + } + + arrayOut = new Array(len); + for(i = 0; i < len; i++) { + arrayOut[i] = ax.d2c(arrayIn[i], 0, cal); } } else { diff --git a/test/jasmine/tests/axes_test.js b/test/jasmine/tests/axes_test.js index 9b833aca443..5f2f39caaef 100644 --- a/test/jasmine/tests/axes_test.js +++ b/test/jasmine/tests/axes_test.js @@ -2777,6 +2777,99 @@ describe('Test axes', function() { expect(out).toEqual([946684800000, 978307200000, 1009843200000]); }); }); + + describe('should set up category maps correctly for multicategory axes', function() { + it('case 1', function() { + var out = _makeCalcdata({ + x: [['1', '1', '2', '2'], ['a', 'b', 'a', 'b']] + }, 'x', 'multicategory'); + + expect(out).toEqual([0, 1, 2, 3]); + expect(ax._categories).toEqual([['1', 'a'], ['1', 'b'], ['2', 'a'], ['2', 'b']]); + expect(ax._categoriesMap).toEqual({'1,a': 0, '1,b': 1, '2,a': 2, '2,b': 3}); + }); + + it('case 2', function() { + var out = _makeCalcdata({ + x: [['1', '2', '1', '2'], ['a', 'a', 'b', 'b']] + }, 'x', 'multicategory'); + + expect(out).toEqual([0, 1, 2, 3]); + expect(ax._categories).toEqual([['1', 'a'], ['1', 'b'], ['2', 'a'], ['2', 'b']]); + expect(ax._categoriesMap).toEqual({'1,a': 0, '1,b': 1, '2,a': 2, '2,b': 3}); + }); + + it('case invalid in x[0]', function() { + var out = _makeCalcdata({ + x: [['1', '2', null, '2'], ['a', 'a', 'b', 'b']] + }, 'x', 'multicategory'); + + expect(out).toEqual([0, 1, 2, BADNUM]); + expect(ax._categories).toEqual([['1', 'a'], ['2', 'a'], ['2', 'b']]); + expect(ax._categoriesMap).toEqual({'1,a': 0, '2,a': 1, '2,b': 2}); + }); + + it('case invalid in x[1]', function() { + var out = _makeCalcdata({ + x: [['1', '2', '1', '2'], ['a', 'a', null, 'b']] + }, 'x', 'multicategory'); + + expect(out).toEqual([0, 1, 2, BADNUM]); + expect(ax._categories).toEqual([['1', 'a'], ['2', 'a'], ['2', 'b']]); + expect(ax._categoriesMap).toEqual({'1,a': 0, '2,a': 1, '2,b': 2}); + }); + + it('case 1D coordinate array', function() { + var out = _makeCalcdata({ + x: ['a', 'b', 'c'] + }, 'x', 'multicategory'); + + expect(out).toEqual([BADNUM, BADNUM, BADNUM]); + expect(ax._categories).toEqual([]); + expect(ax._categoriesMap).toEqual(undefined); + }); + + it('case 2D 1-row coordinate array', function() { + var out = _makeCalcdata({ + x: [['a', 'b', 'c']] + }, 'x', 'multicategory'); + + expect(out).toEqual([BADNUM, BADNUM, BADNUM]); + expect(ax._categories).toEqual([]); + expect(ax._categoriesMap).toEqual(undefined); + }); + + it('case 2D with empty x[0] row coordinate array', function() { + var out = _makeCalcdata({ + x: [null, ['a', 'b', 'c']] + }, 'x', 'multicategory'); + + expect(out).toEqual([BADNUM, BADNUM]); + expect(ax._categories).toEqual([]); + expect(ax._categoriesMap).toEqual(undefined); + }); + }); + + describe('2d coordinate array on non-multicategory axes should return BADNUMs', function() { + var axTypes = ['linear', 'log', 'date']; + + axTypes.forEach(function(t) { + it('- case ' + t, function() { + var out = _makeCalcdata({ + x: [['1', '1', '2', '2'], ['a', 'b', 'a', 'b']] + }, 'x', t); + expect(out).toEqual([BADNUM, BADNUM, BADNUM, BADNUM]); + }); + }); + + it('- case category', function() { + var out = _makeCalcdata({ + x: [['1', '1', '2', '2'], ['a', 'b', 'a', 'b']] + }, 'x', 'category'); + // picks out length=4 + expect(out).toEqual([0, 1, undefined, undefined]); + }); + }); }); describe('automargin', function() { From 3d097c26989aefe79e54f58a275771010ac500a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 5 Dec 2018 16:45:27 -0500 Subject: [PATCH 20/54] initial support for multicategory on y-axes - improve secondary-label to axis title padding - add horizontal violin mock --- src/plots/cartesian/axes.js | 16 +-- .../baselines/box_grouped-multicategory.png | Bin 29292 -> 29265 bytes test/image/baselines/multicategory.png | Bin 24943 -> 24923 bytes .../violin_grouped_horz-multicategory.png | Bin 0 -> 36851 bytes .../violin_grouped_horz-multicategory.json | 102 ++++++++++++++++++ 5 files changed, 111 insertions(+), 7 deletions(-) create mode 100644 test/image/baselines/violin_grouped_horz-multicategory.png create mode 100644 test/image/mocks/violin_grouped_horz-multicategory.json diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 0210ead0ac1..98bd2630759 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1746,9 +1746,10 @@ axes.drawOne = function(gd, ax, opts) { if(ax.type === 'multicategory') { var labelLength = 0; + var pad = {x: 2, y: 10}[axLetter]; seq.push(function() { - labelLength += getLabelLevelSpan(ax._selections[axId + 'tick']) + 2; + labelLength += getLabelLevelSpan(ax, axId + 'tick') + pad; labelLength += ax._lastangle ? ax.tickfont.size * LINE_SPACING : 0; var secondaryPosition = mainLinePosition + labelLength * tickSigns[2]; var secondaryLabelFns = axes.makeLabelFns(ax, secondaryPosition); @@ -1765,7 +1766,7 @@ axes.drawOne = function(gd, ax, opts) { }); seq.push(function() { - labelLength += getLabelLevelSpan(ax._selections[axId + 'tick2']) + 2; + labelLength += getLabelLevelSpan(ax, axId + 'tick2'); return drawDividers(gd, ax, { vals: getDividerVals(ax, vals), @@ -1972,16 +1973,17 @@ function getDividerVals(ax, vals) { return out; } -function getLabelLevelSpan(tickLabels) { - var out = 2; +function getLabelLevelSpan(ax, cls) { + var out = 0; + var k = {x: 'height', y: 'width'}[ax._id.charAt(0)]; - tickLabels.each(function() { + ax._selections[cls].each(function() { var thisLabel = selectTickLabel(this); // TODO Drawing.bBox doesn't work when labels are rotated // var bb = Drawing.bBox(thisLabel.node()); var bb = thisLabel.node().getBoundingClientRect(); - out = Math.max(out, bb.height); + out = Math.max(out, bb[k]); }); return out; @@ -2535,7 +2537,7 @@ function drawTitle(gd, ax) { var titleStandoff; if(ax.type === 'multicategory') { - titleStandoff = ax._boundingBox.height; + titleStandoff = ax._boundingBox[{x: 'height', y: 'width'}[axLetter]]; } else { var offsetBase = 1.5; titleStandoff = 10 + fontSize * offsetBase + (ax.linewidth ? ax.linewidth - 1 : 0); diff --git a/test/image/baselines/box_grouped-multicategory.png b/test/image/baselines/box_grouped-multicategory.png index 5e2a69b60bde1e69be3e81b7a287ee5a4101648a..5be51b80951e93b79c4cb35298fc1491045fe278 100644 GIT binary patch delta 1967 zcmaF!gz@4N#trTXOoCrFdnQzI)z6+jdzS{o1M5$Mk{Zl`JuW^H8ubl5np2V#d|Z5L zmb7RxEA_M(g&HNeCEy;U}q_s;Eoy(0E|d751M`mp_5cU{~3 z-p>90-#?$8o-X?L=V#HoJ3Ec4zr88?`|Injn;Yx@|GOw8b2;>vWqbv5{-FS7wGV3b zI(K&zChshK?Dq4+L+70}KZ`p5-?v#O(Xc)5Zq&Ni-C@tp&5e%RQxO=pHY&7F#xkh9 zm7V$h?d|!eZ*ERM-O4Tg%QM4g@r&nmT=U;PKN%@wUA89Y)|QoPVs~$w&vIO)tM1+M z3peZf^0k3Z3HF<36DeHv<3nQQrzf74RbMjfIqUm8MgGpw-_mHFxPno*;=gX~_jj?D zrLRJER(;LdS^hrm?nT>@7Z=_i*vP#h|Ng#BH9tSyx3{kNkZ@O4f@crVky`op_GrfM zuhV^hf4_dWnC_}ujwoIl(%*TT}YJY#*RQ2_hCi^{$-M=3kZ2mR%{UlZIQ*Uo?KYe+* z|Le&3@N&k#ckaH*FaLJ+ym0dI?XrdvNAzZATQL5$nRETg?%!{o*B|efzn;u%U-w7j z_4W1oz{t`BYCW%Nk+%A4@xBLa_gWUR$;j&WX&-5j+P&rWw%pZ?@9yu9m%ldiM`*ZB zP1%D3jk}BucBsAoaO~ZOGc%1}|Gc}S?%$ut{Y-sx<98?B&0aEpceL-m&FAanj`S7x z8A`a+pPy-*{^iNBlBIQWdq33Iek-2i*k8PRBcoyVwKY{ax@|8j_zqungGDmzH{eP2VWJq4M)Hp>v;~ot<6uU~l#J zyxQH)JckO8wr9SPI_{jm?j6&wox86dvHtz;x#OFPO@D#@OMQQD?_yQ6XRE)|f6m~& zP;P(xaF%xXIvr`VoE4nFP+e;``{C!x9lu^Yf4Jvg*>-T^a6jDLe)>`7-5Yyn*;u@} zwRQDBX8Q_nXPY|(&(6%We>Z#2;om^_3B68YS1jv!+{?c{Zm$+FaOHIm8pbZ2@2*{Q z|F6xDrMbuZWWS0ZKH4qbKkdeh^_S|;FE(|!|5qmedguAahuitDo4>HB`m*BAp32Sp zwjM+c2EKmr{G=N@i_>QsCLfdUew@BhTRK0+qV`wG&mSL?ZTqEhaGnmt`PKk8@kgaLi|_MfZ$ zaq~QJ{WzWT^X>I7FY{f^FMQn4bpHw7aCuN-x&IED9M4~R#`2}OSao86lY_nb2c29$ z2m9yVNe_G_vJSA!TY8rB#q(!gN();W>iix=-kQ@;cW(NT1G5dTG;rE@&lbLL{_Ip2 zCr-w{a}I3YVhN<`^*fQ@XgL$a z4f|Bs?(JE~!NMV+;LyOp$i&MnQ6a6@cLm00`NTw6K|SS0P-H?q6H(5j$PRo~)I-8< tz#LIeYJ^caBNl$k_~A$nG#I zhdH}$waO(!vxaran1ocub#4`gF^yryWq$^p{@A~__rK?Tzwh&W-tY51eJsc{3-Z`K zOjc99_C#2cGEm}ITxY2^ZaTmJu=ln{+F6B`-m5Zu&X}|#3vU-L{;F9Hy=|%4eYPuY z$E_dtSRO|HbjQ=Pjgs@Zl2^fGF%~4wfmKN^$?^1&2;paJOR=O#$Xgk05iHNMU&gF1 zFU9Z}jfayLrejvb!lbuPfVI^=W!?UB^F?Sf4spRG4NxL0c_2^>e-xv^$2n!u`%q|0 z(Bv8#?gym=)}zdas)J22++K5w5VA>yZ`DC}yzU>Q)*Cp{%y2z>`dux%^_I%YPV4ff zPK--7or8_h>cH!n5^SRmMhsQYkSJE~+=!C!SX(+jyuH{Vp}Xszal|ooeP^@NM8^Z} zIdEW8BgnR$GlD8u;zVPw6J|&A&yc+GEBtB-l102h*obSU+RCV%7i3{(*ss7MbX9U? zyE?p*BnNW5sS0G%2nhDnPz`%UBD&o7$SsbRuAnlnfbUZSpBb-@CHlLumfEsl?CyM1 zp^u(l0tCxL*$ft^vX&%(XjZr*!zSWQo|dWa05yA&Tjp_}qoP}?$Fd)bltZ_A%fJ%L z@)q5+NzVf7A`eWxsj48!ST+2!U-gFRbt}|ZOLJvNb5b`BK^#e)8$Y(vnb39DkPU*e zKlYP^0ihe!g!K-RZb4f!vmdVwoy?=z6s0+;b8VJ*fU{tEkcIDeBd)sy2zg2Z7Q7Wc2Q%=nG>H58PG?n%Afad0L)F^4^M$nmzM-Dc_U2# zdLCpIoAE%mKG7$w!vq|fVG(z|5frdxBjOn~E5#127oN-kyO1PI-0obE0X94Bu+BhR zI9=kL-<&MM`@RJVYwmLUWM3r^nU|mCoB9=~>evpXx1>sZ$7pjBY{P1&AUXtS8s36n z|CJbs@TxIVS8Ix&`Ew1YpW@+4W<+y(eskdwQd%WT0hz3$mb^Fj==eR;M^su=+fik z#LRlhZY=&Z<4_3MpXdUFl%FE_h8p2J2A20Bf&doQuI9x^)c7fFt35YO>|_u$t;3~4GD%CqcoSHdx};1Fa<;Wwq6^N$|fOmj4z zGmG*<0z`qi)yCvWwTvK-op~C$TzO&{O{o*pVz_Pe=0h1Hsg_8H$V%4)^HFM_+C#9t z^=;CwY)UcaKHkTXL|9^ht+4@psX#jsmLXfXAw^XiDxXyB#B8A3k7>%GM_;MQD{2@3 z$TS&aH}gjraZL72Fyra$_PETz!0^x0#W7@ZbHcUBr`eRme*AaiV0dDg S=CKhd#o+1c=d#Wzp$Pyjh8OVw delta 62 zcmcb8i1Ga)#tk>aC+`cF-n=i|mxG6I+TjNb42(jaE{-9Sxf9GL`zBly`%}+2L+A=d#Wzp$Pyouou7p diff --git a/test/image/baselines/violin_grouped_horz-multicategory.png b/test/image/baselines/violin_grouped_horz-multicategory.png new file mode 100644 index 0000000000000000000000000000000000000000..b7ca2616b5de27ba6127db41d637cb8c9b55c26d GIT binary patch literal 36851 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 BD!2du literal 0 HcmV?d00001 diff --git a/test/image/mocks/violin_grouped_horz-multicategory.json b/test/image/mocks/violin_grouped_horz-multicategory.json new file mode 100644 index 00000000000..633c665e8d6 --- /dev/null +++ b/test/image/mocks/violin_grouped_horz-multicategory.json @@ -0,0 +1,102 @@ +{ + "data":[ + { + "x":[ + 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3, + 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, + 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3 + ], + "y":[ + ["2016", "2016", "2016", "2016", "2016", "2016", + "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", + "2017", "2017", "2017", "2017", "2017", "2017", + "2018", "2018", "2018", "2018", "2018", "2018", + "2018", "2018", "2018", "2018", "2018", "2018"], + + ["day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2"] + ], + "name":"kale", + "marker":{ + "color":"#3D9970" + }, + "orientation": "h", + "type":"violin" + }, + { + "x":[ + 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, + 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, + 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 + ], + "y":[ + ["2016", "2016", "2016", "2016", "2016", "2016", + "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", + "2017", "2017", "2017", "2017", "2017", "2017", + "2018", "2018", "2018", "2018", "2018", "2018", + "2018", "2018", "2018", "2018", "2018", "2018"], + + ["day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2"] + ], + "name":"radishes", + "marker":{ + "color":"#FF4136" + }, + "orientation": "h", + "type":"violin" + }, + { + "x":[ + 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, + 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, + 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3 + ], + "y":[ + ["2016", "2016", "2016", "2016", "2016", "2016", + "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", + "2017", "2017", "2017", "2017", "2017", "2017", + "2018", "2018", "2018", "2018", "2018", "2018", + "2018", "2018", "2018", "2018", "2018", "2018"], + + ["day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2"] + ], + "name":"carrots", + "marker":{ + "color":"#FF851B" + }, + "orientation": "h", + "type":"violin" + } + ], + "layout":{ + "yaxis":{ + "zeroline":false, + "title":"normalized moisture" + }, + "violinmode":"group", + "legend": { + "x": 0, + "xanchor": "right", + "y": 1, + "yanchor": "bottom" + }, + "margin": {"l": 100} + } +} From d5777e9e4e8643eca9ae7823e7eb5dc85f043d02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 5 Dec 2018 16:45:48 -0500 Subject: [PATCH 21/54] fix data-referenced shapes on multicategory axes - lock down annotations in same mock. --- src/components/shapes/calc_autorange.js | 3 +- test/image/baselines/multicategory-y.png | Bin 0 -> 37704 bytes test/image/mocks/multicategory-y.json | 77 +++++++++++++++++++++++ 3 files changed, 78 insertions(+), 2 deletions(-) create mode 100644 test/image/baselines/multicategory-y.png create mode 100644 test/image/mocks/multicategory-y.json diff --git a/src/components/shapes/calc_autorange.js b/src/components/shapes/calc_autorange.js index a05a6bc11c2..b1aa79ad935 100644 --- a/src/components/shapes/calc_autorange.js +++ b/src/components/shapes/calc_autorange.js @@ -6,7 +6,6 @@ * LICENSE file in the root directory of this source tree. */ - 'use strict'; var Lib = require('../../lib'); @@ -84,7 +83,7 @@ function calcPaddingOptions(lineWidth, sizeMode, v0, v1, path, isYAxis) { } function shapeBounds(ax, v0, v1, path, paramsToUse) { - var convertVal = (ax.type === 'category') ? ax.r2c : ax.d2c; + var convertVal = (ax.type === 'category' || ax.type === 'multicategory') ? ax.r2c : ax.d2c; if(v0 !== undefined) return [convertVal(v0), convertVal(v1)]; if(!path) return; diff --git a/test/image/baselines/multicategory-y.png b/test/image/baselines/multicategory-y.png new file mode 100644 index 0000000000000000000000000000000000000000..7aa70dc05391f799d377afee948883d97e71c6dc GIT binary patch literal 37704 zcmeEu_ghn2*DWPT01F)vM2hqP(nPBC-b)BQAVma0n$k-U3sqW>B27XUB8Whw1x1kF z1W}swCLmS%T{-7{-}~MBo#*}m_xXMhjqL2b_S$RBIp!E+?&pU38W$+9P!bUlUC`20 zH6|h=L4ZFE&~xB_#H;a|L`3XFTB=H>{vLj;uGe~x1IuXi=nXgUhKgUC2ME`Zu;QKH-MJ$XIbL+23Ae;}}^tu1s zMEL*QG+~ne=SgG#XL%F0*Z=J4|BnJ0d3(#*$<&z^9FF!~9qGZ33>3^zf5Z8enHC!= zX{YcRWwi%<79}CS$ok@{>_bhAb}FkIa}U38gw2PC=^90! zCS-KTb6xm>2&DAo6u!*INHvQ7x9v2rb`pm?X(*cP89n|ydi4$w-dkQdvGx)^IxD@) zfE^*MQRIJL1smNSSM(CET?{V3ZCV#SjDVDBzNB5?fe6|wo6SApM5w8^#i?Cyp|z(` zYTLdE5zKx!Yr=$LxYql-lnfuuwEXAmYzA_|cSuhx_|F3^9i1+6`;l^str08FFF3!| zg5ZO#!Ey`nfur4K($ViVZca0wo^SO?O?8}}9AV&ZEEjrqeEQ@^$E%#W7!TTSpK^FM z{8sN3PmtSs79jrKywdhJ>BejZHHEAtl9D)o)Ot!K`F`O}(|mgIs_x43v(x?Nt)HYS^pixS43dxxA-r zN#Kqa9}G1-mzwl{y|X-|aYgdpbpiXSko{NVkETNEzx8HH^>qiwu}BH0Aw&NBd@2^S z=gutd9GfCw*7@B3PaX{v9ciSBWj(K*qNj|_hb(=Yg`)2ezwOUbr7oWeJ?iPc(Rg~e zdJrfVdhE|{QW$Ho_hB(RsM{F%;o&duiJ~uFvJcnzaG#1#z6NQ;Ugj{keey2-L}m^9 z5%!|s84*AQ__yKzIC1O-z{h zVu03n;{ecyCc*J zmgtqAf#4zbY}rSiyRg-$_A)zLSmnuiQI=`9;bQv;J~gnB;|X*A-!`(B5f)x)`zl#X z$wUa^4e!a49%{JoXE7%%gZ@1D*|f7ZR^1|pkg-j;efkF*fOYPE$pNruI*q8Yr0VTr z>hdLKOA#>T@x$9BG_XDuWDPMCZI-1^zmS2HCXP~9RU^VjQ`)(+sbd{Je(f@*fr%{t zsAR!c^$oAm(!eUYrkf9GVB~kA|7k7!6(ka4h*0y>;fnvT7Fi)(B&yMhSnF$~Q1mKI zbVCRfKG$s>N`m*6mT7a#Tt#76CKKfMzRmc>7s+w7oJaG1qpGCGd*9$Qx=DeLrp>*R zz=en>`=sn+%?RtU!Fc|OW0SXxmtMF`)rfiK53uZvl60#KbvZPGyX6-YP6FXa@o*w& zTC`tS*)YIT1?AZ^MC7~cO^Wm>lvA8J{~xpbLXawA7YjnB${#YbxPQ9a3JOMVCyrt^ zrU+yJYq;T8F2u!i+?_le2qO~TH7`il+i=9)cpX%fwFR`8l<-6$9G-Olv~1cL@X8f1 z$WS6DHB5tqX8im=K6oW8VMxBkU`TmLNCxVkhGa`c7}B$N1`xv;sqbF|3)L{+ofgHw zt=P_{fn}w77Pa8dkLXB^B9cKs2*3Tu@d*Akp1uJv9&*yif4mTsaG?hm!M#gg29Nc> zFVyF?NDgyG)Pg@DG7&5P!)nO#rzD&NNnuDB$qQ4g{^6Rq^hU!rtNT?wfs4c^Tf!ht z6%-aSE_!8q#VR^G7lOsD(U~f^i0Hbj??tgT@nKZX66d=-!)R2nIC;Fx%Y3#wx-hA5 z;fiLFiGk3dPxiR)#|zn}t7+O`&2p8XzSdYtkz1)J|5aAx)x{kng-hBh6Pw9D;78IUB zbTx<-?+s&T%%J=G3Gpg{u*rI!^`9Q|C*{A^i`F#ZAx1v^r-%5SjH0 zf4a^c6T(S|e=89lqS8O57gnpk7Wfkbu&r6oU;n3(e4~cVbtJc8H-`RNwf~sp+XyEi@xR9OGX?3l)Q@j3 zR(W(Eq^N_?{u(#)f$CnI*L1b#XHwLBreQ`rJK{9DXphGjjO|$Jocn$UKmPmMJ5PU| zO554;;WOleZldOc=Q!QiQ4Gu?qZ{g2>jcBOUoooK7iAp>JhOEA6mYR~?4~&uoI6vR zir8ZY6G)fc?^wrkRP|eSYj?hKK?LEBuldZ$+&*1;`c&xWV=jTmjZay|*G!WZhH@1rIJ(jR8iUssGoSz7C6M zg;3RNf5QfjJb-kG?~s|tf+tU(0U?I|$!?J^I^~xdf1uJ7%4yzoDMVN18L|!H<{QO{ z82CNwN+`VBI1Gk@4vBQXk~N@7W?Vp8BfRwd>+DVMGgf|EO3dhLCh1uiiDQmJ zNCAl11B`v!TIwyO$mKO%ZEfu&j@X6|dAD}gC#(Sa;**;2r9&}D8)p;918T_#B%YG~ ziM3jsq$?Fx0P$KQ0WIDqXY&1>D;LM! zrK6une>v_nt9Mf?X1Tv<9k=14qlGnz#XSO$_VJsRjTq`HvU-VF@Y2F-$Y8U*UfhOxO?vl zpoXc4q4cV`24B*}3g%LRZ#O;YdtD{A%4ZiYsEK_6vwJMH{t7FMh+tcrYPNIk&EoHq z-_OeOpLuQ!0&-UGa@Cj??<@NK-p^Ia3>XkSyILYhF-~3R`qGteZ(lDF_u|D7Zle{c zzkbwqfm?RMqsX?t@aA-MBywQ@a)iQRq-tZ-;fkLizFM1YgO{{^rAQuR|N7t=-tcI8 z{8^Xp?}!fu7QAKVl{bILD%;?8)oQ&SDCP1&9C#2ivfIboeO)V|BW$I z7X!CKDo;rl)ml`JGq&|=YI1H~!5AA2xN+R|LWdgnF|qoE47UQ6rx)v;E9F*Py34*Y zmp}aVJss0TCDL%iJR~DYX>^l{uKdwtfCizM2srvxOH=+*BZiWlC;|m7*7f86oo=0l z(=@Hx`OY)%v>xFz_imWM+q?73n{D?88w?WD7o|r6C(}tIHKR7=Gp)ENyLKbOlUV##a(e!gGrV5;3&aT!mI*+8f zl3R9Ub*ooNmNgvQx!tVx40+&Y9W=pGhQb6@WJtJjf)nlI?6QY%hn)rwm@>!*?WKUH zlWBT^jz{;!&Ws0aT@m1PG^*JIew35{<1?VhE6H*49qgm!)=Syaen&pCp#aZp#lQicpYVIc9K=5wdmjO>20)p~kUs}^!uSPTlkrF<+$3m*0= zxVf~z-Ia7Ha?(*y;kXt^BP8BBejsn!I zsF*t~2z43xifOGGQl8mE>U!A$rw5CRI!&(CbQNh)p!VnZP9E`zCs!w&sVG$FjPD?{ zqLwJl<*G>EhG+7sP|K%vS9hxfWE@KD(mQvFaV`q4b zphSdW5LW+IK1m(z%kXU3^o)#*7Wv%e0E#;5p^>8nt!+{&%)#keNM+y~oj1Z%+BXxI zF~Z3;{E|>>4hY=iTjFXFl<{L55AiB$cjD1h)cq;01UXKZ>;UI)M@hTqz(r?`_shHv zBEy@^tn!q}243H+qs<9tyW4!H{bC6i#IbDk!;+4)S+&qC?y8`!yu&^myg*+zQRdg| z6wkHcI=4~bp&0M^&VyVjUpyIM0}Y9<{iqdjZ!U$u$)F#b_=utwwHpkm1eG2gUVyRz zf+NRk=OP*MO1zlLdzxd8|5S9O8N@7wkym6CJ(pO{6f$!XWXhW#H>M_r#Jsi73^&79 zP1HH^iTsHQR}7PVv>uB*fc=4@n@O%n;VrlBy+F|fUqjpZcS<*cFsSBS8L;7MpS!yOoD9sIwzOORsJl;d#jA>Ex+Sk|KaTTK4 zXmek&t05>+3>-H+F6p%3kb0Rn^>%by&t16k^4)pdhHAo-gP9l+0#U;ArI?b*91qyy zv$%@@bcognBVfdV3X0UA;+y_(4#7|kBJuMktv~%Lm*!cIXxR(JEdq0YuTOkXn}W>= zSYy?XANc1z>r8R1mbe2Yd3zn}au%T+6ZX!;W;xg+rTzp#66*xz5@5kcLz$$QBEVE! zk$qTRLSSnySkz=U79GXxlq<+bCJ0Ip$9LL0Dz=1>v@ycaM6b>ZqvjnEv^XO;ncGr- z-eA5Ol`9A#5r(*jzXU*(EE;~3*+3rsghlkP?Z8ShN%u?>iy+xiK-yaZ2I5-&W4By0 zJdQwK7)hJk_?bnp%K+*kgM76hSzr4W;`hB9C#CMhj->FLbUW_>K0wT|a1Y@74zL!50CV)@?#+F}(QNr3RjJOt zOeuqr3LCeZpWGP#tX4KFn6JYoB#w8647ysQsMMsgZr&T#+!_D)@ls#&qvezRDJGky zhS_*oZ>N;e!&=WNVUeak`L4C-fSm!2Os8%Tz1rQwk2gPFTA*IrXg-@PxO3}ZE*ay} zmu+06f7OH+#UQ>zf1cP4LP=i^VwfaFvDP_lPD3{(EP@*4M8l)TOjyliYHB~%s{7C^ zo()F#hC37rmAD-UIds^>KmPKI0Jle{e zZK!AGFk`%5wtex8MTuLYimO z!Dr|UpkZ`hy%*8@9Qg5q)a8qT>aU&mLP1t@Iz2uRvu}lzSXA?%oLFS$mDtZgyeZJm zrlVt}+?CIYkz~SpkSj0WaMIj8pO386gmkg#Xm|1;&9LuUVq?#5Gyd$medZpY*e`Km zb+l57)2ofa{N=12rR>uO0HZq>mO6e(k`~R7_9@gl+3c0wczJt>IroRh2R+-sWp44= zf;4B z#Yu%hoeo|l&(2+Yo9B{Y6ZETQ5TnDi9m8CXFf7uAe&a?$$_BUG-%{#BI%#ul`n?1$ z;G^l5u9tqsA<4dBii%=RDX(Aos`o2{yzEw5?>d34+X4`o`F9}Tn&yTKZcCCd1TVXr z&UdEjl|mbDdQQ4K>aCi24RC*I5J%v6%MEfAynnYbEz)Cjo@abq%{e=E`PB1DKIr|D zaf!B*rDev>uOH@s#<54A$@s09A_D-V^Fu5COEEMXqx-W6ZA^oU6LUi-_i4MzN#2kIrj@b~a}oKa56dC@8BQ-kv6fv#1? zua*b(cJXPGMfG*r0L2A=U2Q4_2xFcOHnFjLxLVl-AiwYhmYWhmuTAHC(+$(kbJhFa z{`Ox`ZS~GA*TL)6wL0^q?D)YDq|Aq+6W7543KRo{?|PJCEVRM)P{B0|Cs(u+Th8UA z0k_~nNHgh#i{@WDbD$~zBfcLL2ZF-v=eYc!*n6WD_v=c^myGQ}sxkeqV)8-UC8iUYDnz5nWD+=AkyrgF-*sJeqLYvm$$} zvoEKYqcE|C5m*vxMQ&y6+PI)iE#H;5IGJF56GkF0De#3I{g|2q(ELU1WS~yG?D{P( zFTiZVwiNs0j&WWg(=8FwoR|F(X&jPg=6v|Wxnu*~@06)HB3?*Y$G3VK5>bu^I$vrX z4ZpZ@bcNc7u^ez#S6F|qh_oJA>wYJaq9*GYsSn&i<0*v+1}CxYrdm=?s4x@jcTzc`#G^r^0aIBo*TN1`}QUG z%AK5Sgh|!9y+8Q*@hMCF75PBl#M#QO;P0OI%d$US4lc1??%Sdq0ch#|VXh}kpr|DZ z$-pctrOeI)={2wsI5R(t*mQDZ6V&_gVnptU$-I?T5leg1xA*2afJ@zGW$-uN&JTRY z-hhQxKiNODbK&sZv}@5TI6Hlh8z%F+S-9!vEsyw7jD`*6`I;{_X&0ZKXHKeIGek+c z^s=Vk^2-160cEgRoQDHOySvJ1GHxf$F0`Je9*GAWQ3;K7$OlpE z&U2*nk#wHDmgaO*l8E+b(lxfjr+uezG45^7`dfZ)CG>32Zej3VJ$#iK?ZD$xHT$>! z_5xgygu<1h1Uas_nPJ)dr-`e(F`jD-zOI&!+u4F(F4C}#5CH+p-V8~%SnI0~zu6x| z6Ht=x;6LdsczenQJJUCCWj+t9@5~o$G_Eo_XZgMpwv`fxv{N?sOeHOk=#zwp&dDi3Q6xDh=6k4isV47-mS{0=P3hqMNgTxlp>iR zqE1up$`2wngv`G|4_Gx#d_9W=I*w<5+HdQ6542#C@+jo{q!+WSna8%@8(xZ@to5|( zc(U64k}}m+=FV=nc;CzOOE|k#@DGV<^9bfQ4P^8wh4#BEUwQ0H)+daA4z6vdS$jWE z%$s&Bve#m3Q1Y=|b`GlPyPJ1lG>3lI`$cZkKm`#2vMevh#F|AqPE20)Xv?1U zI|uA}wuKb4BfK=$k0{?zp=pPt&IsB?2M}r;C-;U(Uz$~z)+PN0<%Q_V&e#Told&Ah zj>{@OdQbVi8PoL~-`aNi=H(?`h~UDrCg_rmICk zahC7y+CRHTtEZRCeEdGkBXo4!0LT9dR2I|nh{ac?7jzZab447Mbgm^9oNOx9hKxn^ zh5fjD$Y6r+)QLZ_61}Dag?H2N+K>TmlEWN77>oo+#RuyrQF05i)8eUzVmWrc@74K} zSqger%yGibvcwqkM~ct?4BdpeEO1p7`LIl1mIh51L(fIfD(m=3NT6^C*1^k7U0uD& z;r7v*I7E;UD-WZ?Z&8PyFWoc6Ztd}cuTz>A`%>du8A#be`DpQ5D)bX8k$(6=t_LLT z(|23D33c1Jd4$d-$&uIY2+nSvd@ZeQ+rUi;afC;RVgCIKC2_^Kt(buv;y<(?smp&@tKgqNmC}Q9LcQd1vb9Q1g{9WrPp` zM&yL=z>8;tQ7*Mfx2^(qwX(06s`0G=LfE(C(tShx_xA>Kor0A+Dvy>TpSk~d-@|Iz z%LWTOPtE|7*UNWki>CORmm+UfFkE`3Sz?x>lWsSaJSnRT4<>gld*tPx2p z7fYop4I7YnxDU3=8)a91^9pN;woMqs8;SsD;#>eQRCtr!rH(0%D1AKU^YagY+E{|J zW>(o|6bL65mUPX}(8gf$*SgK7tGX?>oSfwec`Nwk*bQ7K?ey~ezV%}yw_+A8<~dk7 zo*7S6Bc?57X<(zA%0cWeSRpGI=Q*f(*>Kx|%!!k;4VSf#7)x|#+LSP)%admJ{cR|^ z_E=>E2;BspGvfO7{!iWRLP_AV1sbAn!%zoiU<;|lWW|mFaF`HjNjXXlb0zM>Z6VE zVy%9;5wPx3UIFCuha8CKjH0za+-$HC2ew~J&8U9u>Pbyp=gs!d|KT{(k0YqbKtvRL zH174(+W%*iv?M3OE8Ktq&|0PtlA~J7v_IdW=1NDkB;wXaW{gEoY07U!=qKGPr-E-9 zNo%#kv-i`=re4-l?xVF3hbrLVe2# zZsW4=$$=1#EB@q3g_>77&#U{AJ%&*z32>?DKFomFjY9@dlb1dwf;ecf(-4k*%W~-p zqRI?EsQUViWla)L(WRIzG8Fo<<*f>J(>VbaPkZ-HV);jHW%o-_m6hQVu2(XCV*3Pn zTsuwp{uZa-@}QbW(}6QY&{gC7)u-WS6!eeIMoRe0=DySVVBjk`Rhx=7%wf}mFI$zd z4$)G}l(hngpGyEdcLCPLb9m>!eUmvswS?8@2SJPBZS?iB(lnMHvZVeTmsY zo+2JK_BkrpR?e9xQ0OOXtc2`(QBLT+Pb+}DPI2zZV9vV*N-?gx&JN=;$QB|{ycC|l zDkD*Z7lfDJ&c%*C82&MPCU`<=T%BMTJ_?n7M1C9Fln@P-`U+ZNf|rC z>YroIB#u9vPqT|P?EzvvD?g||sFp#6b@vMSZQHyz zzjbGNnGP^Y?j$&0gcP^RN|EEU-g{ql^wI+Pne)SJ`~8NRl(v3GoNKG7#*zc-5UKZF z8HCWnyM}qjZwKc^Qw37v2vidwe1z|RfA?Ex2~esr(ZerA?-VFSj$aE+6+B_qdE9j2 z_Eq5OYo+d&qB6^mm-Ux3u;;AN>+Cx0?(}w8xmK^;lS1!Wx5zw}!jLJ>P6K=LmOwkY zZBFC2w)<{(`HkARIOc;Atndwi<+Hf5Q;l5y3u~z|Ll)l+p1Q3>1O9*uaZ^Ls30VB} zX*&ds+Y8-qIGFV_bdWT!AoB;mT4>BUMulOARqIPXwJ!`z7+bE7joR4We!%CFd!Go3 zzMucaCff{e2^<##`Qkm)>4To)RGl;U(R*TE~SUD4`e zk*VX?BmyrHH`DZon6!5UmgHpEqj#&){)kboEo_y~I$1bpJfdu`p5l2a z>$)sPS67r1A=;Md8)d~%P9(2aaB#4g!!l-B<@lUns#r5v8LM{bEk|F|>dU!pCt((~ zSM4?Xna3=0p<%F=*Q^S`xpQY2Ji22&#kMbN$)Yuhf0K4pi~Q_FL9H8In4d zwH|SRR-E3UAW`7R<-{yftz-s|bp?h+^H2#bS^7NS--ziBq~J9s+oiy7eL+4fU=d|1 zSG;|R^%i>uueQ@F$kFH_ec2uw$Xm}R>&=59h&*Sk^4DIA$8QrTBo)~$C?L)CMLL0r z&rJ7Di?8IjPyPYO;rO!I#-Ss~_5AK2n0bSO>gihI!lyyKO_waMCy(U!a-AVvq)Vn0 z5!ZRCT`3_UJ_c!9p&b?@I@@nFMI%$^uEpQ-n<_=>W!*9Y<_wW~K!PaW3h`qSVa>+X(#S-y?uH zB%6F=CDm@Fy&bKsczg7GGiOGEqPlM6nQ zhG%4F(~*}lxO@SJ&s6o>E@U?~RiE3K1Gjv81LGZqQaHXug#@pvr1>z$~@X=gr*GoD}k^I#JV@!6)o`vi8cO}D>c6I{raz281 zMUV!8w*@3r)xp6*<(aDr!Tw3e+rvEo{qo!8NMeAhTA3G)JP^z#qa0Zm8WT56e3sIy zjFDt2@ebaLO*xe^9|zv#{{UR8rr>(5iUUBnb%L;ux%aiyd&I&eT?)F}Tu;gS7Z!pN zun^m~w^|R2M3N|fz*((lj)bksO|i;0PJ;6}iOL08SLpu*$Q?KlP3*Jwyr$TZH39pJ z2@6}~#1oZ6O9fmYfIRzozFR###Fz$*NRteG&=XdgQ^&SE&`tOuIt0;|{$KvVhf!pAKJz8YxkxhEe@| zz(+=ca^lGTm)+!=M0+W+5rl1?MYB4csd(9y;@7PcX!_gc=|C)h@8}HtHVW~#Pz*{B zNI6rhKbe1$+MjtzxF~xzg|{Fol|4c`*V&Q*W^>WHM&L-dsI>xcIhOIV@#1?D2H&Rf zkr*HtirxP%0TCQ;(VEWTLXbg3luX#!5fsPvu-s)R`pjX)F9DQZqp!U3LSMxVVw!*g zni;zraU1%$8C6JE6w&A63r!5=uQF8?>Tk>X z1bn4ay|Pa${k!#;o=Z34Me^8qR{f*Rj>}Jt!SzHBbNvypzq$PTf71a6M^k6QKo8sE zuW0>H^Wdj4v#7)4ouz?~tPBNS4J42x{sY^B;FRQ21;i#?gVKsE*bjaj2v zD|}#HO~;1aLcDd^k?P(rIsb64IeuzgTmE(tNY`&7hSvd5xM=Qg%{;T=a+xWhXJd=)*fe3nJp(YcGPe1IVCHY?4> z7ax`To^u0dSAP%0xTNG@!eNl7F~2d$6ETgsRKZr0QH;FJ%1~r%&u>w3@oe5ri(n}H z50>})RVX}Pt@~upk_mRT04Q$$dGgIbAD@3rr~e>FA0jl~6!Jm3I}kw3L2z%@2Bm;o zGR69i+ylg^Sm4f5R*>&=KsxdQ;sAIf7WQdw)A!y$6?&DCLW21bM~`CU0!uq8dg>`g zo2?z&)e|Q&)kZ?EWj95`#{|f^*Zz#tGM>5`tSe&W@N7fc07uQ}b+*2tf&(I;XJNgy zB1Rb30gF3W9%P2;-OlqQv-P)M*K5MLe{T$W#DxGlLn?3?mb6sZJsfi~#%MDDtvFIe z6zqlZba89PSx?RqZnca{)b)2&*O$m>BRqOL6q3}3MD7ZloA|@FPKmC}O2nxs0oH9TTbM8af5-0u`p$-$bRQRuB7! z?s0TEGm9x~MIqG~7gXz5@Y;|0xZx}`u$bQ&x5Jte3xLL<4JcQ=(kB#jJeq-lxWw}5 zT4-dM(t%$4 zZca|)+}-QCX&fJ~%k~P|wSDsiDkOV08`E>(t|Phz_cX&sw=Vu}zm|6Ks>~mc|J|LwXGK;o5IA+}0eW+{66YQeKK_-G%wS;MO+2J#LqxY{_G zj+4qh->ZOybgjrMcpK#^HF|B+QXmIg-6|2cAX6BxiI5KMQqx# zKMk2&wdVly+mZfT^(XlIRxC9{@ZyWBmB2YArx>wtuo>45;n)ZeCs-?5&M)J$hHd3tTJ@-bG0W(vooOBc%^N z-?@IGy%0oG?ie5Heh9Q%2{ruIeAmbKzJE4<8rOPEVE4IKF93D8?wwVw$Cv1qM<*ks z&4Q-IASYk1qVe?J-;C49VNVE>cz&%_fP>beP6!Qz<56<^~Y5SAVivvs~jC2=ST@YYw%TZmz}o~ zmqQz{s+Y5k@+TsY+?JmxJw3-EWqe!nuf^FKS-GL;w4D=+S~EN_5G6PQ_UAy;$=SIR zP_T2rfs>r4@>Cm?zQry3V4AaIauo92gs5vl{fkP&vk)qDT?$rs1Ku^ zy>rBzD8mNmNn&)@f2z~oehM5<9R1h*>VfTqW7k-0t}bQQ+r2ZeBrSu3!O11Bt)jP7 zxU4$V*7S5zfLcIbnVW$$OTa5F92(E2T6Y69e z>|bgu0N}$FHnJ#Zp3yf@xOZFTq%yk^bO~n8J;twRoR-dv&F>r?Dc`Dsm7xK%V(;8y zohkwmG*WkPcqd+gs(JX!vi|22mbo~o$p;TNP*nCRSnFpb_kll)lOwm<8dQfb0!xwVEv|#pjZrbS7cx7Uo->qrjsQ`*^I08umjq`GZ^;N)ni%4%R1= zlk&>B`s6KtSOzmzb52KUbk+GtM0}N*;)tURt;%Hwg>S_*BlfP*`BB1CTl%5?R)rz6?`*H2z!D?Hdxljyd#s0T00h9RFi?7Ij!Uum?B413PK=)O@fCV6Ttk4YpjH(F%BuA5Pjnb?D}xOIKKwSgcRD9= z7FMP}JoOYICBK*g-2V%uMR(fc^ADO)E?5btHsES=0ykHM#FGF4-@tLMBN1R1Qi!0l zQ9hF3rX-{Lq@{Kb;34%SlnCH(ER=$JO6^oA3tk}f zvOl20!WAPRs3-whmXP&ors_`96#CSncMF`Zi!K{&gKm={oH4f4V>Ma@`ay~BFU6QT z1iZ+D-->t%{9gAay5Dpm!7NJh_OC|tg~|yOf!+$|0Mj%I(zIS}fW`!;*vcF12huBn zCxH2Os2r-Th!I>doQx!+!&JPpOm~^(X@E#iI!5|kQ%AXASJmKL9E}ux=(p{N5KeAw zi@VHf*GVH@QlYgYdmTc6=fZjVy~l*5jPKHPS1r`f)fa&B!D<%+*YUcyT3>Gf$3pdQ zJ8qpcs9)g<5W!M>dZjf8RLmrfVDXrLQ#+aTVI8Lf)C!P-KJq3gC=-#uDVE$#CsJZL zsZyiOCfzsZ@Kslm3PfN$C@_P<)vi`P$|pcGcdkC-PP688dF2Ohf@Frqgahg*?i3eb zLsqJjCM@PQ0^>ppAg0338owknXu9V8pFXxJb+Qw%YTfA!^X_F;>1GtNeOF1Xji0w@ zk6EZQPVem9v;8yn1d9H}$NeY(5FZ%(h3<6q3WAl6%M7>JnIK)s$$S%croC^^@cxT@ zog74v7B>!To!3c;C&IHE=W4B2Fa?=<%K?>9>3(sB%XtH8G^N4H5Bt=jL}++O?;hSI zY<Hd3k00MC-O4!@(z>x@ZJKr!%(u7f0) z^hyzHxXe}>?D^-preblGOYw?&Tr6{WF^#bzH3$g1ptNc1=4Zdi zMjnO6-4QDv3iNu^pj|*EXqZ9#rKky3HgEE#$%e5G%Y&`?9%mmL<@3AbZxX)r?ib?suNb zZ`8a#HmW+^^qKFw7dO{;Z?QAp`*)8xri|65S32V*qfpkk8H9v_10i6ngNBI)RqPCw zFUk!0fr@u-C4aIOm}diKp7U<`HTo>}<_DCvQj7p^Q2`)&oSV_+X~170{A=V*rnz3O zZ5PD1FPGgldRA^Dkfd#bRXzO|v|a$o5ie+JWqCRopo zw*&MQm=g1$==J@CJu~8qjuH5y#PU-)UdFSLGYuE4&O=F7j9Uh zSpr;sQM3X*@oXJQwj-GgD3m(qza%*?ORU5yut-e_OS+9nXx$<;FNf&3G)Zh9f>tx; z+HXt7j*~i4i(CjVDkW80Z9F@3$OKb$z5gIUZv@7Qj z$ikUZjZGbM>wb{pYa~A@V>E;EfrZ0*#`Yk@r76qam1o)5qa5;+p{8vG5NCTi~?hHq5@!{siz+ zE$ymg*@q^jrQIlGz*XXvr;7e06ha96QIT@v&mv_8IhFa}ETKPN)0_alW9K|ShZON5 zr0o8W_f_B~UU&^!!v#zun9G3ARULS7dKC$UsPmq{jn@p%k*=XI`R}~LgZWIP=kQx7 z89!xqF%k+c1m5${o0E#^6bkUw3(H#UrU9?xkZLzi>t*G@$pwRxPr}Gi^JkZbK7Qhz zE=L})JE53flY%qgnpah^a?dK+c3-pX?#5|M_&fv_`^;l2zm;LpH%eGJD5aS)yD~{H z6n>qbj-=W&zDW1k4SKkT256Zqc))42>B4i*c>|z;A27cat3=$V z=g2l`K2!1t2kK2-EQ#kIvYQ2qJxZV_kIY4LRO+OTVD|Y-cLS_04N0}vhXqwi1qT(o zgArD1T)S=<2jV85$vKFFPD?cM*BFm+p~KG$daWrGZ{w_&20`Cp@zDo;NSAjoFh<_L z7;W1e+E{?Wr2Eo}J9ppc3Ijx*0QP;R2TqG1d`*0Kq=ALCKb~QyrXn$-7%61n+?WvF zTD49zo>#px$u}72`%pY`YSW~iGF6PjUj=u`gy$2d?axkCY%9&oVj>tSCpWy~go;U6 zVwvk-m^RgKbtK)|M&=I2+w2AM{#27qMcoW#a(a_iG7l8p_R^3Z;-JPZ0C>B&j*Xl} z56iC-iOqxCQc@J)4;#(dS5u=*p%G#Vn(sH~epw?jFc81fGQtV$LK3f7s&==?T>HF+Ya*uVQes*huV<07F(7H7p{d<7 zG`ED)yLewyk8Se4K+{LZOoPTxj z)8@a0!dY7jjw*ex!R?=`M`nV|!HQC5(9*~))(PpVjtBgM>z10cjRiW@`LV!o6lf)Z zau9mvs2TwcM@>dx$Vx~^0-!Isn^NYTODb)(aR&f30L?iqeRu9@x8=g4S9#wv%$hV| zH07N3+AlMKuuoyuDnXBrRspTbw-gJb3qY$v$Qa9jSuv&E$`QwEuI^Rq6+z)!kg~eD z@!*SiZ*k%0;{xDP11i`VqI7|zCyJZKIZXpaECVWyUzrdqREz?dFQ{Re5{)8M_$`HV zp>BXWMXLH;8WH)S{Y3ZYG}6b_mA}E^0YtuxK8kX?-0A%9@H$3p{0VfA5(+|*hOh)~6)`>);yIg3_ zKmFbICCabNoC4--c2IOXNa(x&O6cGd>GbOah0akFSnVJ|+!B6Yrh%R7?>0p~6d0U! zawq4G-U1En)6$20sQJ4{+Byqht-{}V-cM-nEhwNXpRl^vqf6GiGIYBuX!*AozS@Ms zyWu>FVV=Ad58f0(9+@-^-af#3K9_Q2t!5r$+ZcH9eLN4tQ^mu>H(R=+PfjNy84wHN z%}iCpOu_IRQk{^t=NN@ZBtu%(hdvI(`ez;^t0%z7BP~`hOLzyxaA_~iDGhAmSvHsH zc6Hh*AOH*_dX{8#%-(ya&`$(_c357<_m(K+7^jvrF?cOfBY_v}A#3D89(VgUCAr-7#>^LadML;E+D!X2%BHXaqnuTUZ zu$|*pHMGg#$Stg>CTBdEB2&11qTlW9i!{%-&P6a=S4p98uP^mSKr-@hr>${b4pY=b2^D%6GVY$$uGidZchMn6_8glo(!jdB9=xe@pc=tlQx&*o^@qhj0<1)ST1u-GadDHt?(;e!1FRG+gSM32gEOpo*;Wn2<@Aa80_Kq?KA0jwCZ5tM_qP9<96vj=d<% z$nX{^6r?eClE?YuG;QM5wg*kUzv*6>Mqq<3m>0Dh6yL#XMwCd+HLGc0XKll)Y#azi zt{eZ=&NB>Dv6tK}3L%H=2u2HDOCuVJk?dcb3E7-gk2KajR(=F!n$K_Ggm=k|uVaUq z((-^RO6FrN2m)EOEWZGV?NQQ#f;#_|3lgXS&wdc}4MVzUS5;v=ocP0l_Z?;C4C6hD zTfHsnzLP64M=!t|3F74z7=Y76Bg>Zoyn0I+G@3p%`l}030`ObrB?9J$;%KN4UcbeG zleXN9N-ewjR+z}DA9elKJY=o$ECaL^i4^`z+XShWrvI-F!!JM&_4!paI0JZd@8!ux zS&&ZsI2q{@k*?%+9wJrVq3acU*&^P<%+J4tOw};sw`?@Y@LP7ejq5aER!MLcC!gpH zB)T3)xB-Q2u*_U!4{0%%^-N6-h6s8T9W28mn;A$DL3im({A@WNPNdxjb`~Z$q$^Bx z7pDR6540QjV$>7Zg#LGvV8*t9y!?bFXkKEp=S3LNP{C2VB4Zgb;0|W~a|c~C{r_j) z$}ao2Bn0a!rvvUy!Nh!qCcrrRt3Q88j!L~t^TEOw_vbJQXdH--ucQ#-k#zN|@;=5oKGi4RBM+vtwZnK1x5wfx~ zLfNB1h`Qyr%3dWqGoy@_nPe-9^Zpn;J^DATN~A9!b7c%kA?K~GKiROv9q^q0bd9$k*R zp|Tr50_mm;$6D7qBoOFL-_iD&hqUuXGw0-dAT0sJgP<}ME^osxPc&^5A4ucGO>?s> zFHsYEgf*V;OQI#1`x*IccNUv|}>7@ttStIs%|*5-*dfmwkWTqY=S;DJv_R zQ0ZR#An_xVB1YhIELOjLUBalfCBx`d{;@e1?mZCmUEBIc3+{hQ>#c3iW4GhbjwA@B zr${Kd)&qfoKi24mm59O&VH<`)z~B%NEGv*SkA1r`k3=g+f|daZ;;gFy0f|A-$Yx<& z1VK`{HARpiOF!>4w0@hFJ7gD+^O2oDO-FkVL`$?V0L6Ly{P8(_ zsC;=c5^{=0+ZX-ZfEYxAJkNoky9 ztvz*~8A$BlZM8_m#8u@g3peCGD_^<{`Rm10m1w^7)bHiX8mJR1&pD7k2U5Nu<_fK> zZm%t41NVSyne@wY2g?8u=<3N>-SG?UV={h@JK}bdw88zSa9x`I$s%~1q|2yCFAfh~yCc)s9rPNv`4&l(>Pqh1nFY($|c`td2` zvylw_5|W?Ml0+It-`*7nCtA+0@#}hs-oKf5*JKo`pG1zlYy^@RJy#&(4MDS3^UvA{ zx2#l!8m=k$S3MwsmyA?C`pAkv>TqdP-&1$cvdwC|@`4|7uh5)c5B<(pinxPA#6cKg z;FX!S@#)h6@fNUXN`~Uh!h+PfqW0;L0K_XQm;(AG2`|X!m-QAq$FK~HQ0N0qC^NX#dV;J#N>Pakk9~}(SMP9Ah;MGXM#%u}4OeVxzI5acAO34Ovi@-B83@|X)=`;q*ZZP&>L3>MRgfCfnB~&C z51u-?Zt?>XOJZD=DJlQal@x$CIW_Wy>dA@nb+qiNejjD#n(#+`={=)doB_LIcDoz^ z6*X!sW@i<}>UM8DJMN=mkh3%JWOE){!r>GSY@4V$jtS;E6+^Dif&Ii7So?w<$3k{< zoSiy&i!g5OU@IlwOjuB<2&erHG^bKC&1Pym>C;is=li60iwC}WAOE;r zp6j9FnNq03%pkck&f~z^GzUEpL{xohXi5s^7mnqX3Kzxy>(KNh^pT%f=uEnad2aij zTlnIeD4^jeK|R3&$gR16qaeE5+X1+91|RwrPXB+tg}@z6@xqEmu0!+=>3ZPKEudB+ zWdB9UfyHQQ{=HpAy&RR)!4~Od!rw;-GPh}tI3Zo~va+G6No2%nJezs>dL1DwuUhU) zSR9Qk(KH~&hc3Dj3PR?yBUl`fR!z5r+J4*1DI z_$Tx~nFALHC2v-MuQ%Pex$#&S;aL8xTmwL|ajm_dz|4IFN|VB7AdmO_QrjtDk#KVA z?_|J6K%e|sl^AUN(|HhSi|fqPu00>Vv1qTIBFaDi*3bR)d6p2-(d)ja_?Qf4{)t|e zk;|<<8e!NkO|55%56DM73BWV^;udm5*F&DTcJq&SRy8zV0@(8OvpLoPg8|S1E)Cy$ zSZNE1o{?)B#BwxMGlz6b6wuDnfwTs`RAKt*J9fW-#G0aE zqUwjfx_9MeHTU9F=qFb)A9~Gqo!h-RX#c!C+}i&B$L^rqYDo+}MvDFy8px+u8DIwq z2aiB0K+;N^5fiMmwiV-GkDHjRed5upk`vU}?>*YW5L5Ae+WYsBfs}n8*5-7ox*_!; z4mk4q$pZcV{U+ZyGQZ>_mjOs%BgLG422|2%O5Vv9+(t?naqool`7tw)Q5(%J4OF?n zE4g)N8rAfnm)J@mE>OXzJm)=SL$5ydk0_ESjp#e$XJ2~mS`iWGBrKqV9u z6TeSGzfL{y22*&&M)ZHDNM8ML6L5pqDy~6Bw}P#KkdEwmTM4bx^5VDm7aLmTJR*O$ zbDfe(q@k%}*|GFn8?qqlndU`J#|K9+{Kq{dcX`KA2eL zuIe~aWL6P2dRIx`1aUsX=xbOT#c7^78Y0z}dFR z&I3i`&kO5cGxmR5oMXe?8^DylJHl z>icITzXMR9oLJ1JB~OBkc@3rR52~GO2l&Un1VKc!FgMNp%W6uzakj@OWFRKCL zBsEC}XlcPs_od$dS_S3|50rXJcoTP$)Nm02vT#Lm2B@N-aKNGIsQr7}7x9C(Mw{2F zx#!QdehkHD8h|p=*)XW6Ar6&!XU3TsU_*p>-b95JNN=8s*z{-(-1vGJASAml5H<^U zrfWVBFm|8zpBN~+0F2`}P8>A(N9LH-Ho*F2M@&6v=I*U~4@~q=%(j;`TuAtS9v@f% zMp&Y6oRg#{(DP?1w^8A~?T1$}#H?laYbN05qtZYr=V$%B<2|aW)nIEHho;9v@k9Qd z$#P`zlCHTZYeNYpYAq^KkkLZ+1_^ea1;H5*BihWlOfAbugmFu;kQcg zGte&7*qSV77)EC6;8&R>;n1X}gYYre*Cog>u`(~{3Iz_r^8>I# zXLe_F7)wii*?ZxgN9Nm{SS5e(O)-t1-zrzNSL9EYEgHE(jlg2EugLQCW$t5 z07u4tJoEAJuU^D^nm8v*T=+g{7lQ$xX#*Uuusfo^S0O1VIzaVqc#AhwN8_i(z#nEB zl@-Txp{s5FUgc8&BnXFafeXfq_rN5mbX5|C8v2cBEwC(lVi^kFuQ{{tb2inqy{n(BGjjESu;tP@$ z-T8X8NE^xm1lLXzA>F-bsj5Q+SzGhh)&ucbmrew)pI?(^(=LN3-&mjpuyZUK#uKcc z9X&VPoOp4e5F_|)9t3fh7QfqBrjzImFcGpVR^CmNv^Re*);k@`G%u*q|F~wmcQyH_ zO>{ZswYNHYLw#L?~C|G8Nio;pVSg$p+}d0RQt><|Y@weY$3trGM`e zw-=7uLW~#+&WD0}m(Je=6gKg_kg#wwWz33eM*I`h%CG_nTqBL*0h3)=xM>LTWHkQ1 z5;y%hTN%UGJIm*`Iexw^o-mXEDJS4`9|Kw6I2jKxVfzJVQ7ay^b00g>qC~VYkbf~5 z;QQhuYl3m4`T)+}YC#WPzxsgd2s5YF@$@!@qVGwx}NcPX25Q_sFLVzKHfWCT|=fdt^5)0pZGeaLwlrUsR6m`Q}-edoy1>l^ylXZs!A zrYh5cak`N#)%IK8dz;GIb+g?dIc}D?*e(^g#GQ2;`g1&nwT#~+Hl`QZz89ON5})}N z1Ol+NN03I=?c|tNi;T6RJanMNwf-i)b!nc-_NpD0>V8o;6np4QN@4g+(k-|$u1sHd z=#v=^nSwpt;`HMi2+5fD6R_>xwJV5{G&5b4uVjcOoWd~I6 z6LzEjwct79Ze851&F_PX;f(-A9eQ;7w$N%rQ(avIDl{Rn<5{tf;0HON?t49ZF`t|y z46QwaPXIT(bb1jnYV3>h)-3Waph8T5sJFD`51wgx}M6I=nxUa2h9s% z^}cCdCogFb5VI4UWKE*qKuuf%UBu>P75=#_(W(S7+l0}0zXYvw;gp$L$v*Yo^FV$@ ziS7_=PO<8m?OVzHKxJp`$+hhGb2bGc@PoORxIaQBYaUj=qkK*<_^8?II_N1tLDu54 z$DNek7$~i;KXPRM*D@}6;s{*5arJA~i-3us`sW+bg=vAd0BYMxaG+9-{fRa3r$$g)|MJoVcwh2k`@m9d=Yl*L# z;SS#T@__sDo(kQsK03eBrw(HJ*dDIRwu&1$QN?iAdLRb(;OdIF8&Q%Hc}f&-1{$BN zdGan8Zwrm*Vz%!NLLEWuw#&DI?j}&&azaXV9_J0Hl`teo0!LVPi6J?iZQXev^&L_N z^?P^>d_VGDh&yEe{20c3qAA3DsVq%ztaD@y%4M=>WOz=YLmYK$+rP7VT$AV3xgA=msj>WfLk!6`4k7*L5K>c> z+bkuBfa`C6{<~dOP;}(^_LyCtdzHt1WK(GHK}VcltuK$&!vT2zi+fs55Xid#_(HM# z3=~`aY?dLX;zt=6s`0?mr)ya`!-%21i!2en$W@7usnz!<=-Bv!g}1CWR#!LV^x5As z@WC8BL~+&!^NRXpHG9LoQ$u$Xv7h)d`tS!0wo7EH8Y&Kc*&BS}$cC1x3i>em4%> zyG+o!xC0?~BlM zxg==_AaACMRKsF8ZiK=>fjNaosN=Oz$ncl6SZ=ZXD1kCX{C~Jk_PIWwy^>`?G+znO%6bRce3Eo!)DV0tQE}CA)2PySC@>`Oc7z zR}&JFAj(I=lfUcDr<#y70Aq&x^^(n&=Ek6N?(VleA7R)SLmqRbKUt*gb)U43FE{cQ zKOOU0DIIOj)k;2Plq4`Ua?E2Xe~*AcPo7{H+qSmH1@j*Y#5tBiZb|1Dr7GQFbI!bI zE9166_?f0=9QmcDN>Ehd(P+?`umjL-FWS~a_fu1PD=do2f*nT`;-aZ844Kb-P@jy) z#&I+q*Kmm}sVLW%q``U_(q?(fP9dkRTX^U+L@8Hup!WTB;Cm4MuyMHo=uPhyvtQ5~ zY){w%xZm0uxml0DQZ-E@Jj7BcY5}~1UB{LqMqFm7__ zfnWQ@E)w{A;>@RKeiwb5z{Z~+Y#)G_8%2x%=IvDrSGCtTK_6w|a5Nga0*hpL@-hH` zTcJpYtfU8o@EgldjVLh4SKB|NC5)LNT@TDJiHcI_`|NK$W5nAuI zM~aOQNu@%Vc7I1#6tlLPwbP@E_s&w;zI!*;rE#_hH)K#uyZRuej9hs6R+hbxKH9bq zz8l>qkFk6T$|wAQ1PE*2MB$0sWRW5QT_Adm0pI>Jeygo-r49z*ibK#QaL3ON1EP^Z zK=rMMV(&p--ukHiQrEm+&|WVl)4i*ytN~x3-+y}deMuJ`x3ecwIdIC#zf!oNi`IvJ zGN#$cZ)HhnR-Sm@ZBnAQ403YNCh}Y?8B~UfL$eMjALId3VkxmpUiJfEH$tYb$m2z= zV_c6;LX#Pi;~lo6Cx8lj)vE=7w~?eNLb|{=Uu{;V5yF`hb3<6sU-tIK_1{`S4{3K?pputfxsE-yBLnCaG~hVW*e4O%I--kX6F|RcY}_MiRZO^P&me z3Wn5$S4a}F_>4*m9Vh!FJ|Eya2k88fjt>YxqueJ__lvTs_)1g7sP9^E&>KkUV{vg$ zGwuDIx*5|6Z&7+(f7t`5;KMK6?_KAG5MLxayqIk&WC!-bbG5mhWq>vf=N0!D0O<7{ z*!?jO9$65!Lp3AmRc);*0CN^V|F0-~#xGO34=aRw&SttxmzzDEJn!^QP=1A!&h^=j zuA$guO~&z*kDyPi1gTPrn|~*%x3Ll^AZ{Ikz@1T zbG(xm>8htebktTVHttjDM5m;#F3QADp9JjngvX>hxu-N~0yHKH@cwTa-H5r@nb)89 zd!~&iL*512{|ApAJ!+;h)UdOaHwJ>}256gznf5ag5xiT>7NJd2%wi3WTyKZ2M$7)m zS+w2+#K77ee7VP@>(EJ}{ns#ekCAzKBI4mK4!C8zYP%Ia0`j`$J0#mxRvt6MOMdKN zD`cJV;&v=PLm5r4uHpCYKuC@%0NNU0ingDUx&Ati^D zZQYNn5$9-Oqj9o&%-sRO;lW?dPyueb&H+jt7bA6@J=B`F9^ClShd1HGVS<1u6`!U38r&i0RoTM)B)uK&~?}ISvVNkvtxDg5JHKfM3(ma|(umI(}ZS186Xp z9W(sUl1$Y+dfnjKwQJrLF-b#c-esZN0J3fO;ze8$41YXN$nl-=D+ zzqC9UjC7zilXw|t?Gv46Ic-J$BeC*JePs6K4*)fBF0t$r+}&THz3SrhXf8!vpe6Zi zRrAVOstlK}$;PP%Og%H%#RL?5R!n0AjiqO6LmplISZ$QVZQ1fM2oFVpH>I-;*Cl^^ z@I71Z?t0;<=Wg#fo=RA^)W~N`y0l&5-U-_`jLt}8JUe^0Cgv;R76Is^pG|p z2?|-Zu60KaGu|MbH-+j-w|F2Au+CIdM5)Q8H=g?EI7$YlH4hEv9=ox}V^9aCT=g05 z00&968N5CG%jp66DHfs_Wf;KL|8G9UhMPo1GSpInT$iUW`WpoSALH?3)r}B28qKPJ z&=VJ6pH9vN5HH-^bgzH_{RufO8ln&>z+hHoP9YRhf&b>Cgev>)pw6Vl&2X{%f4N9t zPe9-Z%QzMU2#QN+VTrMmn@hP9^AwEA-J~QeWWx??_j-W#nCGuToBrarrMMUP zDxcgN^Ot);PsRMjPX~=BC^&*J!-pDs$AR%p{fmp`qQp5X&wjRYS#OfzRXc$jdCVMK z_P4kAL|b2yxE8Sk#K_vrpU~3M0`AR?sK92gVPZyVDmK>XL*-VaA`WEb%8tf0^tDkM zf{8o6JX9))Z*8CX=oH~Bl)pt>4pa&yJbaPR zzu{V;9dkY2*Tgg$&Vun6pu+)V`U{v^bRIK0;Q#<9Km}kq+L|~wvJ~5;X~tnxy7BiUUC&-A{75?c{f0Ztjhg{|w+4v) zxda5> zW}X`V<`d8Mb&vxQHK_J-o26;e01$8v36vlF3e}3c2AsAV&s~k?ls#ijyNTC(A#8No^gzgT7JWK-WRl_ zszp&cyoh^$qIDi03+okBBSW)*NR=L{Q@K>*19eBV$%7cu7OzqWk7}c$#jGbtT4=Bxf4xfC_7I7H*Wo+?m zxcFZ*1T_Y@_@RY2pu6~p8|U@oCF>Wc;l)Bt>PI}8t?x}ia!6$g_QP)BFYyin6IWhn z5@;oV4)b-i?a@q+SvcxFZlc4jr#)*a4LLi6Cj16A#JYatK`i7ekV!UkN9wT@*BN@H zhZ9$qx+`L;e94x-j$7@*xUXZV*yRrg;cM#wI0vrS?meJ{*~Jtdc}`IDXtLf1;v1J) ztVbXZMl}i)?}yWEM*R>`mkfg`oZ;R~LiTT120uH@SAcwl-HOK&bDda^^{eSUrl0=- zu+&hC*Gk?28BYU*PPa(ThDKrag?z!Iy+`tzNKp$F3V$v_y3h#uU0#F~tbSw#pwb#3 z>$hsJkdQRn9Hy;rEBA2AJGKHqyx4`vCK!t7u0|GB9(n0w zwg1_|t0ri`6Nu+4si*|k-|!cLGbXz=q6uL6ceasuZek5lf5HuU;;G)`GPlKqZ&yXM z!KGwS!7_Wrg+>dcQZX-ye1g`vFA(50|9D~YG9do(o;*4Nc+PrQ zGbn#3-LX{c=1+Axaswft3512U0iIBZu0jt%a@{F+uQAGN-u8?$ochrIh@vGmnt(7w!&$4O4|=-E`=s?|uM1=xWBah(JCNnZ=#!4oJ^5Ei zzP(L0X0h4j5X6lYdZeO1deVk^zutg#DGN`r6n*VH9Uv;Fnp-ux2$2nKsDnK}sX-UO z9*A38TgLYBHlG@^W}fTGwFuECJWEsv3#Hq@j&1HRluJ!4G&ae|>)}*A z0fV3o`nxF#A;IO#%^`A-J2a9Wbqh)le!7wpaPF4A-4n&+Q~sso1+ow1Dum})!pRNB zUjvaWuA80f;6a!6>LPt)_cJXXijXJ~*ujI{- zXs}Czb5a^uOtoYe%_r;rxB?6RZ18h-u zW0ReEf^G4y)~%h;A;GDX{Fq$k=NCE{I;s+5-wVSnwm4GB)4u?u^Yl$$4(cf~v}`FD zgTT;0b^!h1eHC(9&>nlv4^mHI;ln?mZA%%%jhgfEfMpUo4lJcUoYcWRl=a3s&J8*q z?t*z8TnL_Y2NZmmSN@(r>5LNJ z?Pb{#Fq_%Zwav>zhccWyBg}-30Wl|G;?#DyUyf4$W4tKU(I5#|$yP_dfh2XI>M8GO(2(W1Z_`UJSc4`eSpK^o`M-IAfr-BQRlf zI36f~4;{xl>wl@)Q7_%?f~}jN`i*_d7TQ5&`IG13nmxV)qLp`8%hWXGr-W0n$$OBG z8*5GWh2Tubu~`);=@vk;OxIjfngB0*d7^xMa8o=}kI1D!(y_>rK z+|zSNdc*PSgU9!8s2~Is#l1+Z<9232sHc87lx)CEuv>wk-RO1c;?Q*Psxcp0Zpeb+X{V)f3Y~V!XHbZC( zx}Ho)2=n^PMNS1;rkuO)7=g$OExDOB51oScSV&_ac zCX^r>7xH|jeG8m|ka1rplgD$UQ%getPZVUCH`lt-ZhIfncQYaV1e4CJzMk0o#ahGxphbUY@X-|-S;#`7W!g>{eH?oIG)pNP?5 zAEyg|EJt`}`n64N;jvq za1LksG)YYeedDc^xcD1i{1B z7eurF62@;m_^_iaA!iBbZ3n$pehpIqjl#;P|HBX>uL7(rkA9-625`y|!`qK*9r5^0 ziazjHVF7wY_HMITNZJuBiu>C<#?Vc`d_8MAwhd%V;9tHcOUhrp7yXjIL<)p{uV`b7K0gNO20z_!~*3XB9)I?>{TBY01xlYjFK z+|1`U5O?sP>jwu+&Vv|Hl`9-Ob!yMx9~&MY^>qxB#?BKk5{_^*)Ta)b~q{+ zNNdVUN_AtIGp|PGRr4W3re$P|<$1=#!|4yM_7Mo5{diA#^*2M2W1b9(9Ix$C5;6}N z6dsY6$H1b<-A}%@^7g|_+>wD~+oP&$F6wHPCP10Gg*|M(L)qDsFr4l8NozKEU5RV2 z3!$9Dx7JWjuu|%XZ%n=eJxE9wq;YW^=E1FhInVzJhitqdP_qc#nob^%K99bZ|9|?1 z*r?h6es$nZ|55zF?g7{gjXDJ!mK)8M{8hZ^#&y>g0xFeZ8leGV_aX0S ze!T`r3>3uKG&D3|+Qxv)TzT?cc<(EIVmVocPo77WCELgb4VCtyuR@I|oKpyQ{d61F z8?OLd=j{QN06e1Bg1ZqBYye~40eb?fzo9@!j$eHSEJ?sH>HvP0q9=$weP34K(fdALG*ldp(WB_pI;b4Dc19Df%FK&22kQf$>Jc{04e)HeHRWE%YtodJgj8lFdK@ z1JzbA{1jztbjBEuhwOh}kxwPKH&j&-f@b6nqkB)R`-=+*xEv@Oc5Z<4WYFV`zXG~BTLD*%2CO#kBcOgtCzdnRP|060!Zu~n!5incVe6u1fQY1tl z=>rUQ&Fh$}et;JnBlCMqGi9d>G+^x4j)L%s8=6<|LbQn3HhE3skQVLJ3UR3a?`yV8Tpbz7b0{N)Ib2ZM>{9y+UL`mxSSNI+bM>z$_OCM z#`;JeRlw0^L;@jmYycATVL-yDqk|xLR)y#)H@XoQy6d-s4fMROsXjtQE#nr_l*}!0xIU{lM0w9`1(~-j@SD{rWjOEZ&Z5z^A39F}b#4{Tk#7DRlwKg_brh zCYT#|doTTM*q2CE*^HtJjm3rHN;J%^GjQsE^_uG-nmAm)6n*FnN4n`tJ4R@Z&r-ZZ zg^@S!erA{pICvZ_L93Q(zgUynRtT;Dk5PqmQ~vQ;JLqFZf@!HhEI&#wjzCY4F^q>c zCleag+8@)OZ=V~0SX9sOI-&OTC}SQ-M0R3@KU_r`@r@7Ou_G*uzZ7p3BY5=a83BVr zeEMm`{DGt)C{qcEL1&l)crBRz%ngjxr^62L zLVj^8vuElv2wHef(7)R=3w^6oK28=_p&+S`x`07I(^2i!ZA&pU027`>qpr{lpC5#i z@qw&HE+4n^f_9sHER%IkvUO)v2L#+hNMjP@oOn4j_B1d<3(n-#Ap&(B4P3K*Rr@?Q zQjFkG2!_mzTDlavw0fZ^tQL3VBn1O@uOGKt`)laUP2?3cjKl%TaI1w$HRqbd9*-X< zA8>S%Z9Dd7&7(-m0=m>Mb!EyLTF*l#M4Su~Wy{WK1!?G`9oY7E>U#c zW$K};Q=qirQ_V9*p49s}pjv*!ECpDEq_<~oz|8X75d-eC&8{A}A4^NrSYv0Z+aWq| z@#*+)(8!Rkaqn{Oxj~P`do+~4P1PYP&CY8r-~sM-(`<4|harF*O*3<-MT@t1^n@TQ zpWf=P5t%%-z{`VA9qIO)8jYkd@q0x3m+x0IHg1O{9OqWt8E&=(hQ?&Ka&PWu67?-r z6po8+E}Q@HOX)wK_|NnB&-z$*cmLT9{}-&oht&(FH?9oa+4*7%{83iWkbiax@AE$Z D+zm$z literal 0 HcmV?d00001 diff --git a/test/image/mocks/multicategory-y.json b/test/image/mocks/multicategory-y.json new file mode 100644 index 00000000000..263ab1db6c7 --- /dev/null +++ b/test/image/mocks/multicategory-y.json @@ -0,0 +1,77 @@ +{ + "data": [ + { + "type": "bar", + "orientation": "h", + "y": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "q2", "q3", "q4", "q1", "q2", "q3" ] + ], + "x": [1, 2, 3, 1, 3, 2, 3, 1] + }, + { + "type": "scatter", + "y": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "q2", "q3", "q4", "q1", "q2", "q3"] + ], + "x": [1.12, 2.15, 3.07, 1.48, 2.78, 1.95, 2.54, 0.64] + }, + + { + "mode": "markers", + "marker": { + "symbol": "square" + }, + "y": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "looooooooooooooooong", "q3", "q4", "q1", "q2", "q3"] + ], + "x": [1, 2, 3, 1, 3, 2, 3, 1], + "xaxis": "x2", + "yaxis": "y2" + } + ], + "layout": { + "grid": { + "rows": 2, + "columns": 1, + "pattern": "independent", + "ygap": 0.2 + }, + "yaxis": { + "title": "MULTI-CATEGORY", + "tickfont": {"size": 16}, + "ticks": "outside", + "tickson": "boundaries" + }, + "yaxis2": { + "title": "MULTI-CATEGORY", + "tickfont": {"size": 12}, + "ticks": "outside", + "tickson": "boundaries" + }, + "xaxis": { + "domain": [0.05, 1] + }, + "xaxis2": { + "domain": [0.3, 1] + }, + "showlegend": false, + "hovermode": "y", + "width": 600, + "height": 700, + "annotations": [{ + "text": "LOOK", + "xref": "x", "x": 3, + "yref": "y", "y": 6, + "ax": 50, "ay": -50 + }], + "shapes": [{ + "type": "line", + "xref": "paper", "x0": 0.05, "x1": 1, + "yref": "y", "y0": 7, "y1": 7, + "line": {"color": "red"} + }] + } +} From b792b8df24de6840db326399c2f42a333fe45f67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 5 Dec 2018 16:48:28 -0500 Subject: [PATCH 22/54] add support for heatmap and contour traces on multicategoy axes --- src/traces/heatmap/convert_column_xyz.js | 42 +++----- src/traces/heatmap/xyz_defaults.js | 14 +-- .../image/baselines/heatmap_multicategory.png | Bin 0 -> 73948 bytes test/image/mocks/heatmap_multicategory.json | 100 ++++++++++++++++++ test/jasmine/tests/heatmap_test.js | 13 +-- 5 files changed, 128 insertions(+), 41 deletions(-) create mode 100644 test/image/baselines/heatmap_multicategory.png create mode 100644 test/image/mocks/heatmap_multicategory.json diff --git a/src/traces/heatmap/convert_column_xyz.js b/src/traces/heatmap/convert_column_xyz.js index 5bff912ba6e..5f7ff06f1f2 100644 --- a/src/traces/heatmap/convert_column_xyz.js +++ b/src/traces/heatmap/convert_column_xyz.js @@ -14,44 +14,36 @@ var BADNUM = require('../../constants/numerical').BADNUM; module.exports = function convertColumnData(trace, ax1, ax2, var1Name, var2Name, arrayVarNames) { var colLen = trace._length; - var col1 = trace[var1Name].slice(0, colLen); - var col2 = trace[var2Name].slice(0, colLen); + var col1 = ax1.makeCalcdata(trace, var1Name); + var col2 = ax2.makeCalcdata(trace, var2Name); var textCol = trace.text; var hasColumnText = (textCol !== undefined && Lib.isArray1D(textCol)); - var col1Calendar = trace[var1Name + 'calendar']; - var col2Calendar = trace[var2Name + 'calendar']; + var i, j; - var i, j, arrayVar, newArray, arrayVarName; - - // TODO use makeCalcdata to make this work for multicategory? - for(i = 0; i < colLen; i++) { - col1[i] = ax1.d2c(col1[i], 0, col1Calendar); - col2[i] = ax2.d2c(col2[i], 0, col2Calendar); - } - - var col1dv = Lib.distinctVals(col1), - col1vals = col1dv.vals, - col2dv = Lib.distinctVals(col2), - col2vals = col2dv.vals, - newArrays = []; + var col1dv = Lib.distinctVals(col1); + var col1vals = col1dv.vals; + var col2dv = Lib.distinctVals(col2); + var col2vals = col2dv.vals; + var newArrays = []; + var text; for(i = 0; i < arrayVarNames.length; i++) { newArrays[i] = Lib.init2dArray(col2vals.length, col1vals.length); } - var i1, i2, text; - - if(hasColumnText) text = Lib.init2dArray(col2vals.length, col1vals.length); + if(hasColumnText) { + text = Lib.init2dArray(col2vals.length, col1vals.length); + } for(i = 0; i < colLen; i++) { if(col1[i] !== BADNUM && col2[i] !== BADNUM) { - i1 = Lib.findBin(col1[i] + col1dv.minDiff / 2, col1vals); - i2 = Lib.findBin(col2[i] + col2dv.minDiff / 2, col2vals); + var i1 = Lib.findBin(col1[i] + col1dv.minDiff / 2, col1vals); + var i2 = Lib.findBin(col2[i] + col2dv.minDiff / 2, col2vals); for(j = 0; j < arrayVarNames.length; j++) { - arrayVarName = arrayVarNames[j]; - arrayVar = trace[arrayVarName]; - newArray = newArrays[j]; + var arrayVarName = arrayVarNames[j]; + var arrayVar = trace[arrayVarName]; + var newArray = newArrays[j]; newArray[i2][i1] = arrayVar[i]; } diff --git a/src/traces/heatmap/xyz_defaults.js b/src/traces/heatmap/xyz_defaults.js index c457abfbfb4..6bfafcbdbc1 100644 --- a/src/traces/heatmap/xyz_defaults.js +++ b/src/traces/heatmap/xyz_defaults.js @@ -6,7 +6,6 @@ * LICENSE file in the root directory of this source tree. */ - 'use strict'; var isNumeric = require('fast-isnumeric'); @@ -26,10 +25,13 @@ module.exports = function handleXYZDefaults(traceIn, traceOut, coerce, layout, x x = coerce(xName); y = coerce(yName); + var xlen = Lib.minRowLength(x); + var ylen = Lib.minRowLength(y); + // column z must be accompanied by xName and yName arrays - if(!(x && x.length && y && y.length)) return 0; + if(xlen === 0 || ylen === 0) return 0; - traceOut._length = Math.min(x.length, y.length, z.length); + traceOut._length = Math.min(xlen, ylen, z.length); } else { x = coordDefaults(xName, coerce); @@ -50,10 +52,8 @@ module.exports = function handleXYZDefaults(traceIn, traceOut, coerce, layout, x }; function coordDefaults(coordStr, coerce) { - var coord = coerce(coordStr), - coordType = coord ? - coerce(coordStr + 'type', 'array') : - 'scaled'; + var coord = coerce(coordStr); + var coordType = coord ? coerce(coordStr + 'type', 'array') : 'scaled'; if(coordType === 'scaled') { coerce(coordStr + '0'); diff --git a/test/image/baselines/heatmap_multicategory.png b/test/image/baselines/heatmap_multicategory.png new file mode 100644 index 0000000000000000000000000000000000000000..5d21f9e7f709660dbef580f53e25d1ac389b91df GIT binary patch literal 73948 zcmeFYWl-E-vo4ASx8M>yKyU~a2u=baxclJl!3K9oa0rrw;I0D%XK)J;+#w8u24`@G z`^*1*_rCk=s&nqGx?k>x{Q;;NV6E<6y;gTW{q!d_6?r^tDr_VqBs_(8Z#0mQP@qUi z$Y+@7z$YvE4=YGW^hgSCq_x1H{Y;D$Vr}w)N45+{2xptOx;paP{b=8d{EA+q|@0`|83TJgc6fIs*vmdVvtET6wx_5}Rdm-aSk zK6(Us1-buezr_VX=5V+xkT^QAt5N>rhg2-PsVO{eB6ZWQ=089D`zM&#yoeJy(Ds>{_)Z72?f}~*T?6>fBgHu7Q=-?G5+h{nLaT$Kt_js0fDlf{V%&Aq4FI4m-T>U zL%!$)hX@y?r?U?H7pZ_{JBR)LbKifqr!OJ}1l`%(9Q`D1K~B_1nlw#TwCIvvcZ?@?1 z3Yec-tP*kGqUYkm6NZ8FXJy?U|9yGY^N>&>qc{vGE>ZY2uG`}bN?Bsp0yt@0hAhE$ zr&}Yd9-^|LUrh;)%CyUQJ$JSIAFlt1j_FYyULCJfymF2_8TD3IZLemdrpJfdiFyZJbeQX>q5FTH9_sjqOeC~^Y9g$9z5v5wtRda;1&UtqzchTZqm7TezSPKJt13iI{Ny^^kA_*lqNNGrd)S@JwdX+ zLt=TQEro>l51 zv!2K=f(~hj$L8kdP_Df>NYt{k{1599G~TCwWIaE8_z-?0&_DQ@6?MyfMq78av^b0C zCNF!!U&wJjI5ZSR3j(5BIiR{#(^W^`Rv6JX_#cI=Zi zBB+t?P9e&(k5)&pHZVK{gVzNnhK!5J*_Rlp7Lrc?S*#V!{OoPS4Kp|q2a5I!Z4^xm z4Vg9p9|4MrR3a63#h+v6vtB}|JJVWQTvhebAB-AdnF5*5CViF=GB7Y*1 zr*MfYcv!U_r^Kt=V@zx;BP_jA!d~X*&oN=rD7%pMoA*ec$W8p8{>ct%A199pQ!^o< zR=y!BN#a5q0zT)<0r&|*ELV(xJT<9>SStNUfY|*_wM;Mc9k7>CyK}$m}xw%`!A*a z78A}AdEK{^R#Gr;Y?TKksA3+nFGe{a&`>}a?DG=IP<4Z0zoRx?q+Q^~8J5TrpsPw; zTXq)5&~k5gMLiUX%NEuK)O+k`FrbCff1XX)Qet>UE$mD(E90L?Z)lsKiAgw;NsEvF z>=nJg7iR2^bnpdd09gsoOjsN;cl21=_yRzw?nZZQzwPX?p@^rl;3qBB1k`z;wp4Eg|eoVvWUbh@%pGk3?GE zsdzv6iq0R=WygT`AvoPMwKGjD^1XQgRzKzirhjQ7MxyCMWg`q5(~f=#^AP5DBtBiD zE?c6QC6A(dVohY5JP_B-P{I>*L?4jQ8DXAPn#h{CrC{<9H4yl4Z6gL;qR{pYak7v` zl}yp@`7Qh#nZB{fe04BiV}TU=09=gj z$Io7rl$2KS%6ojKok$*szx5H58Vp>v1Y?=6=Ng^Q0v6ZN63}7_AWd0lSJMx(hAyP- zx(n@juC$BZ9!+rqBsdE)kE)^*e|lHQzCm8G1Y`$)mCAY`RfK@r(2gpCaCyW@lF~Cg zp8q7r@d+Dro-{VnW$siYV4MT_RUS!~E4f`~{5#5g15&y2=H3w0D^#9)KIV_$iv^nq z$=WlFtWKx-YO~Nk!bF{l^xGzwO@sWm%= z++JA4OM8tQ^;JJ9(|U?Xw)wt$Lyn!96NP^Qjd^QCj;)9wAjT95r4@Taznk}X@v(F$KGz6O_w!jqy#rHV3s5am&gE-n@7lFt$o%r)f@(@mB@dX)zq%#Bw zH0>-$7G!o(rNM>+#`=vlK6uM5LI3f7+z{E9o|G;)1;xe3<;jqdY9Yh`j@#&)^93OW8)fQHOEox}nhCono4WWco zqI|H_{e*)vpGu<`ywH(!TE%~p=RzS^9x{a`_l_x46Pq#z1I72P(s3nPj|XN|;QfsZ z|87h_iOKOT1T6&Hr z?|3v;9nOvp^0>(VD&4cpjK<>y( zLWIWEdmk6}H)9e9%F#Pq1YkC!@Ga`^ec`*elHiF)jwc`$?c!4&ecJfH)l10Be-aKu zG*liRDXd7$qMv(nd2ew{lpsd%Lfr#2zD*i~e6}GhJNlC61O-94a|pB_XvrQ(#T8ew zqOac4nuc2W9w=hCV{T!-VRO>4>Qo#DjOUKYjW(Jmp9sxC3rCAYi}l!!6N5f5;GZE$ z=NM;2r9(?LCMq$(gXq|w2-lVE0^VgrPxcHx0Zlk41fbJd=DSTzO+8V4E{>FRxIrp@ zyZ<915of}^Oc0@A#8pY-M$OH@g2m2{KzB-ZN)X8a1lN`{R?Uvh#0@*PpBY1xQ41^M(4`n%#X!IyAj2mvF7~?z3=eH{%Q3 z-j4Cd&yATcnbg$RRtpo!upJ0{OiS7*UNZTv_0_z?h+Zw^;Zyl;9>9kG`%!~@QT0ru z=!hS&d#9KhW$`zUmx=@o_wo(4O{yuJ^ihxaRbsJ*82s%D0XhhU`b16R0_mjT>6v;H zGV*hp-7-w@+cCzzu4o8?tzQ!#k<4XD*XCO!d4u)`jfo^uiuQGA#A;6zj;kE&#Gpzj zZK%`y={PwZB!4~u*((yDoA={P zCX2P4wLAiuCQ-N0PcQ5xdR4Za_hvK#7$|Z>P^nv)U-Z&@GB8^d!679nDFxpWWYBKH z^XK|*WERO}8DopE4TqUbv@^O0 zN9ZIrX3UuV)`;k-+sEu547VxQ+t!mhV4l| zCVD`}hyJBjDG_gtnljY9OrDbCMSo_9@b?bBW}bg?yY74>R2Q&E%Ce$B>ueykGYb3OjOAUPZV%e9)#fT`Tz;L|S=6`S6fq-`VRmwGDZz=PmMJC`K&(rNb<3|w=RXb79_=$YZgTiwz4YEJEc)Emsq!39w`Cm%KEF?|{bX`g}z72khT zdocG6&JllOT7nKPRSng_ewq{YbZAUbANz$zWbhOnn9YR8PSHWt;eE|a3QqdP^U5eN z1qAB)W$1$R{yX%v&Rc=Q_eEYc)k%CzbvX%mhanQ*bW#?rkSbr8&f`_m1?hnW;QD`L z2%ewO|DkJD_KSkfN!}sCsynuA&Mv~vig`)UK?@!D&5Zv9q82tFq-RWvB~m@X&S(ZDclNPNtBI_4ze2V?c^}wK?hwMs4D~CefbbWbJ6xMf$uRPy6rlQ2zH0A z`g>AS0!aLANQmy&d0gnpxj8%)LW&A`SxEs--Rb*}1^5u`Q)Ly4xX@j}lx0*@h+}DZ z^#A#u#-|hdJ%NR|7mot2)@?SyvwCE-osP>a>8-Lq8Rz8NI8SoX7t&{#zv0y$Tt9? zOb!M0=%$JThP3>Dl%om@lHXJF`JW|Qb}4N|?LMGtR`&{*uGaH9C*r+5=2PQG08`<7LT3K819yL(yEJE zR&ebij{kNz|HT8kI$HzpeSc+3()nE;MhsfY02uJ`Fa9xlHZ}$QVjDFl(8F;xjD)+7nkK1k7Vfxd{L=|DxotGF3eGW|gm^-}md+2QSJ-3IR z&l*yQdc0VyvqOc<#W*cBtcK!ntIe)b>KO9FmxTjFxp_FJwMXeRHO5^LrgVt3v@~p2 zzhSOMH~{j#F*9SJ4Z3p!&}I|>8=syLqKX9$dgFiZX`eb3U6(q7f|S zSa;qY8S=ZnRj8@@Vfgt=I68sYHYzB6ID%H(*L0!QikAX6l*|3kXvBge8NJ?7H{e!o z|BG7zr*ii9vi{?FZ{YWrD?!Ke771p@Ykfmh?oPJo(8m#999_}(9;sIt4vf1iw^CB? zdV-Nrd7TyoEUm4v8`K&ir>C{lO2S};WvCEJS_-Ih6CMlLblRx>BzO*qXL}e;*oYVB zvDiEJcm!Semut^qT$nC~IQzGJOelJj*-6W);CN8q4wquYIwkz6z$ti8$o-8|Ys1X! z$5@_2Etfa)QVQwSs5$GpOKY5Yw}dVG$1o6u)zogzXoNegsfA04Q;(X0iEfg}%Cl zt~TEr;KU^TSgO1hJZ8-5MUc-A+j)?{D*#^h?6ntePZWVX&=Dj&eQEuRLcnoeO?Sz* zx(pu*d1WFkdxR|AxE`tWi+3f`Dbo7ejvg5T|3x4MdD_E1wR_;2_`GSG5-l*Y;XzE=jL1;Ci!kJ=kpxKo-dVy%F-EK|KbPw4RW8aAd3>d}+#L!)N1z(T4-Pr}JnS1u4h38rVJnIH0@hPjzsC_@d6L5NSi}}~`7+yyd$EN-} znwD=J8Wxe(P6??+>+Q?30r!on*VMB1LGjP?jgP{EPsiAwgagFr}>yT=7TfKKZ!!W90b4jq=TFYES;Njf0=in7Gvcja*4o!}A5uh;Wa z!aC5wc$*Am=}-lc6gELUHpF6LaPfhK^kej<{i*#KUr?Tht?{np{gLt2k2fDEn5k&K z%s6Ujp&b3bE9Yy3e?u~cRa{%AqJyw!_NR&y;7tz8E%n?Ev>ai;Rl@kw9v0uPVeDzJ zS(7tb8Fp19h^KY528vr+o+RGvh!h1gI;WsBDHx|cfhrp>9jmRDx4&;LvZu%p1!=w> z+Pxe6MQLl6^Zzbl=vIR#jvBM=162JhXD!-%BseWNCXmN#j%N)jCHR!#cO0}$BzZWG=avX;Z)78?a3Xp`P zmvI@lXuWFkI@?y)<0NAcr`%lK)M!Tm?orZPcUNO*JMtRG0n7BhA33Va7jJ(?$1ldB zj5)fMJ(RZ9C-{}inrG;vZq64Ar#{_CcZ5O4Uu=whyu&8R;FIBT?a{2izk<1KUc48Z zEFT>5!&1dN9$%bkxE$|p9-U+B;+A$1NU=RR$+GJ-+!bPKe6i4o$7xOe@^iGMQ;b@$ zcjN6d|JB5tA60h3H+raagjRU8GKJR|erB?;>-Mxi1^b=i=YOKcHEoqskd9I&2M`JJ zq8LebKl@^4x5LxC6JWuG&B?6aWGIUSzQymRjj!j`qrfWT1RP?DA z^W+pbg5YsPpUYAx0lg>FCYVJQY2Sf}q$YOsM|h{kGXPZ&|$ZAtYTYJ$SA|%=&BSR)1#80=st(Jj{OjFm3hp%Pe*K?%@^tR+e z$&HO=8aMO0LlEdu3@RSYn%8iv)qu|K;Tnfu{Z{r98IQ~J;JICPDX3yg?0~aMNKeHW zk3w6Bum&Yn;Lm1?Y`UHOrQNS?KH#Ej663~pBRJm0p%DLJuUbrd!w@OURgQs|k%YBi z=JQ6M=JPrvSS_>_qMaQ#JKI)v5a)sMR~;!po%S=?--)>{fzuFG-=yVxA#{+Z-&)-) z$*7bWp1IGj;QGb3Z=*HgiBtI<7!YtOU$4Wb16_rZi1 zzcprw+FlAk5n~pwc2XuG=Vi^$bgdN#_Iw>*igX&LLR(XkLV)8c5h>YPNg(Uo%Z`lg zx2NeKfLL{u4@^2pprb-WKMA73h)n{*xo7G+zIO)Qm}DYy4AMgY6))aM?diZW!L!#b zM}9)R>)eX)ojqQB@^S6Aoz&kGynSSNDn6!9653g5>ffXL`IL@+T+f&0Yx7NoXUx8M zt6#f<+GXHi;#luBJ^USe0PEs}%y*I(vMp`w1ZdOvlQw}d%47b;g1!6)D75EwZZ87e z#+Kqc0=EL)=?8v_r{2M48e}^;`d85D5Hif>nMKliYM`W%-!k>8MAMx%YU4P;lAQqpKV z8TM|F|E=Qd-`Q*EjU>hO{b0VL3>Un0%uR3YrwGu-71q6CLGi`%7TK3HB8t}Hn50KK zOaBYS66@r^(g#O}DDRW=)^=Gi3dbF5zav*MS z6h)LZd$&&EuXm7l#;-H?QK;HQi`i)HPc-Fh?Og$uDxwuum9dgZWOb2>?4i~QywS2o-GnQPTTvg*BR!6Nv z?2*Lau(sBeNJrn19lrHtW-dxF$C5hfqY*!W3v4%H8>E{3?DHB)`k^=d{chmj!wH9Y z>Nl1zJ5eSObx?x(5Y~rDVYS~`BU4S*6Rx_Garzx_uy0kch zr9PN`DLN1zyF>@}?O(z+76nEbPEA`SVOsInFGPmuX0`x+^ziNN_JmqArKU|0 zbk=152h%}xJ5a!El-23Diq<;y7lFH;eUU4kRMFBZ!3F2D#itihD)6}IcT$hA4WZGi zUJ;F~Kb##T${yb68Hh>s#V4(tDWSrCuUV$F6cGN1Eil&`nXGgnWh)klyu6*vn%{5v zJy%G}Hn^RK6}?KT_#D4{5E%ylg$u~dwU_+KwSWN!X0wX&_m$GVPySRZ@fi>&Xdqo% zlON7?bxnNcnCF7>z})KeuIT6{h&On0Iz3(eEclN;31TVEG{@9D51En>3Lfn|BL%|F^qDjW%lI^dk&z@iUIX7jl-|{WMz71sU=LS)oQufKrq_2^xTe) z*7?PO&j>nq@%l;dCF&oit3Iw}Ew3U!Z-sVOq@%BE%Rr(1s4$BU7Uqp-?rg3?Po{L1o{ee;B9y@C|leXp6*(zT+{JQSrGN}~~1|o|MW{eIx&$a~Y zXu3|m?U|O+s@hhXdWpDR@pnXK5&c7CdNk#t-^EHl+vnR2>t zYX?fer?+DsmTO-=1Pd>&fd?<%fqjNiLA9(`2m^s-sN4mfQdWqiMY{{6vfjIwu8`dR zN6q8P-dA*}{0V9h`JB@5=SoO&Vx&cu=+#edD+~p}@4ez!JcG1~c73(ol#EG!b1R3n z!QNlXIntV2uF7Wko^@)@y1g$hSG-BXPiU3!~j%h&6soT3LVWn>SYH!M9Vp zd^(N~4l<0)ve`=qXItu>=yGc;d2tbgC9gM#9p|f&J$I+g;Hfn>S)R($9An%jBa~Z9 zh_ITr*tFGhMhtL1Uwk^r`0KPrMmX0VVsSrZP~Gj6%FeTDQ`d;7W2n*X?45dlXE`3= zsmYwLzOQ~yp=m09xI^3%Vdoat1`A*1eOg+Rc!Tk|UAS}b>w8z2F;`owWr6|0(N7ES zuqq-l#fr^kJPXBbar!LagHm)J_x0(kN$zcb zDg^B-S0sQl#O~aFZSA;F%WU3h2;`%-hL0Z(zWQt&24}|&(I!08Osl#O7Af{BT(@e9 zx7bkM>5N|f@{zCJT6D=6&`}l`q1mz|fx-sbVc$wk z^Q#{5D4l)zb9cqQdi~+oF|w!RNCzH<@nor=J`G#R^!=R)=`_Bo_UBfTPlc0IYP2w- za*6CxS)Y*6sKuQV9ueCHCf}`_#oo0^Hf$+$C^|b`@jE*q zK3jX;HELnsYl!}&_2$AIq$V17^ty2eP=hvUbydwx{pZ7)E`QwR=1j4qW5OSnIC!md$jlwqr;4WNfDrf)o#R$cB z;Tc_y0WG}zT9YXYEY$u)ROmFkxhIV9D9K!_SSN@wYK>~!*#!~I!y=i$nU6-6z0_*) zcE|JEyf!5Q1ULA^@jdy^UQ><4mVWkJZKPERyV z@wWOULMEk^#iN}R*&*o~`le?kGVBOosVfrOazq+?F*fen^DfU|`vP+pThW7%hOHl@~ zB<&OQ0I}FqWrigWwEHPk@l%&S@xikBJq}4op!|VP&*kCD4!&S8P1UOn5(SKpT-M}e z%;Z`P&)c&(kYR7*qg*?ursoWl zNf^0tLxP%jt*K7`)f|)+jiXG37zla}g_MY_yHh`pj+`vfJ(31ci;v{X(dHox=wA{0*_${j*ak-#d7n$Rk&cg9OpvKiC(TukO}b|UB<{F_`B@adE*@y z`o8BrpLNJCJ6A4FWp>IYg_4k9?;-@Yv7qh;J#N1^L`3V*U_KZwy^;Pqml}WekH$q_ zp9ni#qaLaD9q_&`&UTR`+9pECSv2qb8Bp6#c9st~fL_~Xau?!GcWBR@OQobEtxnTG)vnc`36n3E{i z&)h5B9Naf4d5>e1ev|JN7Bzo5#Pr8}4WBLM&G{9I|F{HV_lU5ys#?DU;H9*Z^l+s4 z5vS+cgnHHV8~hSak)Q<2sw>;)172|DN7GXG8RS&TuL;_N2p!7Q{}4^dh)S2GVxOyd zyW@pBoSK!wMA}h~1};5p3PVL@k;jR|PlS4(LN300IaJmMz=?_X(I$C3NU^-D=A^PvD^`boa1|+m)RHt)s zdfs_oUA`I6=@4UJKLIB+^SgS(eg-ptI`6Sxv!n#4`V*-_$|(`FOYO*+JdUNKq7jwp zk1aGahM?Zgay8+{-LB)-JtFSD?{$7!XB57g&9opYv!6BUC7UUrj*+qpfeXDc>;TtP zu61~?Ra!mDwl$S|O`i{~P|Koug4|b(4J00Aw#6PQ^n#H$f~V@)HxBPb&0@Ijb`TWc z9)Q=~s>la5&z(2Mwj0m8OZ3AcqigP(J8x!Na#L;VtaxD%%TcWQ6x_I!0k5~vu+>hx ze%?P9KPs%683blDwFmUlM1?9krkm*~=w`RsbejpHgG92SLwf*@DF3h!u5wU_bTy=` zZnBf~uATEJ*#@YO^AYkP$@G?dNdgPY8fWj(VzO&p{HF{ zW=9PT#(bSw{oEuvDPeXWcVmH>0HR05O4oDN;4bsEWlbm-3=Zp|q*Z)Cn=>es9gdDG zk-?kqDR-^`@(9`2jcbcBW4bn(-LoqXwNL6Z>aF40B^g2IZUgf4!(5x#G=>L0`@*{4 z*R}gxNrkjgpy^~>@{Rs%%p(m~4OhGzyjDp%UUIS>A3_={9PwQGRKt1*X;$g1A_Q%d zDp!?IV8m}rUwD2ESQ6l9Ce-<%dC`!H1MLz4*DEQIeGj@^MgK7&U?5M-8Sz!3#UU(VQ6o zJy2U4R(BN(euwS;N}2OLUyLhRssp;CV$CY$sc^2YJ$Y0Mv7>UzW&z3fK<))!RB#sp zmGd#bVJ-vlH+L%XQ`-j7&OkM;2B1EGD(2EYt9 zuY{d>`U`i1kcP-b^;$yeWzW1e-9Dv6@Th)dO)X$ zqx3WO_ntFzr=ljlM3YdN%7(?wFIT2fwXy{~hcyi#u*DcFj>FhC^^2(IFn#k2>r{=x zF0dr8eod?qMFS7t&LmcgzYM3x4w|t9L*vhL1o|KNfmvo;QNQE{K2s~KYEACT1%yOY zo%I1zPGFWrN3TIWkQ58dcEpVg(aSsc5_~T!xAXIE_=Lj*&uWpOUL6~1f#cG1GpW;F zGn%rGyA}>Sa*NjOa)2)FZGNtORyQEymaXFKiE4EVbQs~~8vz=*VVm|!-?RP>#+C?#X_ZL9@l7A4j*ZaHB6picrYE)`T%nJnuSYvB9}Ni6@=nQ7u@92p zCO;>M%hsZp=tsSd2Y`-@?Vllon!AR7h!n|wv&58nLMmzo96FQyu?R~74?K2S_J$TY zkU?$SnRa;4q%=A7@b=+#lO;-7gj5OJSZuYY#=`8;&v6)9NTt ztL3T-tJ#w3d39}3px4@{0i05N=Ium#&&+Ox=DhEH%Z%+r1uZH>X1RB_OSnS$*RxMF zWC5DP*BMpQJ=Ff|1_k_rAKev%$QUU5+B0UjP)+Az&L|Qcv+oC*KLO0YA-Mj1uBYh-v~4&aJtsT}thBRWNNMPfiI{vV zU}JE{y~B)h)OHDr0Y*qVEni}p*klI?(fV#PSX!|KX*PY>eD8nUN1l^mhlh?zC14wj zK?_FWGL$=Xd35Qxj|3)%2r&p~!)NT@ULGz_K(ak7%u1F(KwGk5op7{3 z+#uivj#;hzT7V+ag^F*Vw#vxlXRaXO`|eY;0__+bsVR zh3}qeEx&I7znSewfZuuDY`HAg9#hvzl(V2h^0;`kfri05Yg_tqfQnuR;`0an)~S1W z(CP0-mpxCw+#c5#fB0&niYr|3Ea8!2>V3iU^Y`g$z_@@;HhA8Wl4X; z?c>vDb29}{Ptm)negeb|X7{5u$!jzVQs&FUr9H3~6wZZ6cw z0H%^+09yMqU1Lw}LQjse97=@q&EBg~yD9xtxA)YK&2}P--!n%#%e7u1bx~4XWbBza z*7Gr(k+ieC4@sAc?^nVj>3Pj=C&of18Oi8Ev`yAv^Vy_7B{@nPNXKS$u%T9)>jB~n zAK11-y_FGN^9?<5t2}f1UtA=w|?sb)gQ9r&coPKZDmzXxx7Ax z;!+4cDul5)oB{@yb?{h4GZuU5#7qIs7b!5)>I%5(VT-7ZRm_NRAMwjm)=)k;#(@3) zZNv~L%)_G^td8wQ?^5ymrT3u`gOMo$-X%jEy7G5c3z!0Gccw4urbMAw2cj1@MWDCD5 za*>V#1_tufcf3}_thN29{3>?W0%a0^{9;+?C$=@cA(s~yMC&{tY^443^|2G9A>?Xc zS!;$j7s&DXzz?0@FFBKPZ+ox9AktO1nY}A2_VCpC_WBY zqHNPr&J6Q+r(==;aVX^WWDnBO4~#Cx4bTM{A%RYMHC~{kCMOdy_=ofp4__QCMW|s@ zy`Jw;j2itJ#u+J)80Eb)S%^}i`FFlCoWeZx`~*AVZ7iK62s2`PTEX~B1;EvrDnbzu zZA~{i=+SUFGRa=A6)FXYTqTs>!@TW2sE+GCSFAvWlvwEwfAENT9AZ64kEgEwy5kVh?;IO(JkS8D#v()-n@`wP(Sm~x7o za*}xuJ>k&H#{-wk7`&Ve=*^w@>88N8ns;o!nkqlq*GpsU@AnzMA}L)LlJ`8)`-3`N z#fNtt*{>omr*j3_H&PFNH}gx}?(=8=sjn6M-R37O7fTUBAaO;Xqs;r4&2;l6S_b!L z&ubSL^rbk|12Z1_%UmwPNm=l<^nY*xmKw}XHU^P9Zy#=ta8}8+fQe9^-jit1)`{c8 zZaGBCRGF}<2&idR9t~oBZI(;=h5DQ>AMYuvT6jN&=+=CY>gc}S2Dlw_wPh&(Dq{u{ z+I`;0a>L-8+xGWV%M~WK?aB+(WD73XW-|pWfU~$3MV`BfAIFH)5{Nu7_F^NxEqgsr z$vRUWaf+4wBzQ*Rk?KS;^h<5Onvs8JTCkrx0qY6#Cs&`ikHW8$l1+)bZ8y?vQDJl+ zc)He@CQ;1=Kw{F1?HN-9lH`r2gTG$}3d`vPDOT;bOy_e%?AV(C|u)9XtGRH*BiLwbji~ah^pkh);kOqUobG{aZ^MAD=2u* zaG?{sdN5O-?wYfo;nLo9bG{bYl@eaA9+<=ad~L$ z^R*m2Uc`5E{~UFwYL-Ksl(7M!uMX%R!8ebmB+jGLVplos_R(3AeqpCAMmKd?93dm3xY_^4g=U8KBJ zmJg~G+5^mbph3~vC$s=SkNko}`|@jn4L5)j-d5&w6_G6O|2S0|>*44}Bzvb%eoRWQ zv(vQ7btA!-PP{v4T*0pCbaQhn0kw%bx9qSm_y@~Sg@&YeQ*9$rS~=xBYbGg@GQ&@q z{I%n;mZ}Tts<9YAd(nP2sTlFBgAp-lRv&_j5h~U|!Y+O7IXpBe72pVi>SG4v@Kv=Q zik=;z zhTiKH)h&9dwdg0ldX^A#pmaiu5=`{I47=d>I6eUqEAc}Eiey$1^kh6C&Y%7a2A0!( z@nwNiRE4}ij_{S+AXV_Ab!Y3o4S6k~4wk*2`wNo?Lf}x;mjXiQkA3im2!JGREbW&7maQ1C@3;jy;ZVA;OE?ne<#1q+mN|ehpMv3R=!YnP==v@>cg^B=EScVOEW}>n48L$%66B zNRdETrkcQsOTO+qRAV9Obd`@0GL$b0fYG5W<0yW7{9?*MEU&I5#fUYZ(-`8URE-x) z;kE$O@d_rYPBIH8fIdID`z&5vi#S1QI~q0kIGijr1VXLkK(}$oIWB6<4C@~ZNiPgv z!Y}Nk_IEu{YITYO3OoF1TyVz~ETrz{CQ@MIv5`=`3LDoBk!}NwXUkN*5>=r1^p~&c z`IoQRM}_F`?j!C>S01;w|C%X1>daQn+G+lQNuo+i#WPn$0L7(>AC+exSFDDH%M7op zQ;~rJ^30F$R?*>Bpg1v-wR}uUe3)TjFUPZQX-@K^g%?}HcT?{>pHl%mCpBznmm73O znU(MLylELym7V#FS;&3t077R%?g zT41Fu8mKn#E-UIE+F8=*!b-0Dh5a@0REae&Vv-lFb&Q6RikDHEr|(q52w*5x`keEf zTz2yI?%6+tm~qwlJ*gxCD-^@4BeCrG$0sXRJbxw`0jzM(T?ce%b|t5@2G`D;LQ($B zdTxn3EN3Y9aa|(%`}*TaMV^1^2!)P!skTpGzEzKiUsyZ7UC%THV~67JG~HhXdqWDD zt*zxvy1mh1(UK7d#B(_T-30CL_ndUi0|rUWZny1eCe_ls8+((VG!7Cqh`c!Xcyc_M z-sjIQ3HeP_+1bhf!P}zQJ;*>u-uN-XDt9NPr{Ae4hrZG-x57lgt|v@X8Td@2IgTz4e5_ozmT>LjDjHlrrLc+n7)Ml&-wH6unz*VkXQlEno%>0tCDJmd-Xvik7 zmFU8&2j(bS6|cSf)`Sey%tx>@?sGk~Ha^NLl#yU!o;H3S|K&tFtTGPkPDi5lX*4m0__zG z#}`f!a$7y`1m>%UjWGzA1L7Op9>blu@++BuBjo_nOzxX9!dd&tsm8xY>h)bOw%u3* zB{;nb8k3MP0My(Z5Mn$BV7`F(5&-oE`((9@d7fb-r{-I-md-@G%?(&n65IO-nXGaQf!!1J%J6iJhhQ;HC0x@ z$i7bb7HjUqq|c55s^z$n!M*_rNb_uN(9~E-NzI~HuK5578XZj~-;V-ngD;mjw9AIX zI(hLsXez!Mye+1LAf?PW&ivY_mUoBb%oh9zcJ;k8fIe{)%7a6go_kcOJo;JDRZ)1y zeiao19}a{lqGYyP@*CQ|lU-wA9Dt2>xKq(?@P+tSy%$`Rg{(OBy(oxTUb;7};q`ht z;N2e!EUV;owa)!db&aPJmSU6}Vru#V)k}z;)B#i=rp;x~7NwtD3UbLa$Qe`7mN9r< z=})|hpIGPP?0jNw--}HBNHNlBIJ;W^&d-Mf6*L*Rd;Gd)!ON@j_nV(~qALwWn$3n-AM8!)Fob>tEEYqH zevKTv$-}49u{I|P{P=$%IEGT_mJj_QC$8|z%=XDe0u{wtFa=gI3=EmWu3bkBzg+mw&Wp`eM3-Fq<#H4 zpoih!4JGV2zam zGi^!fXlC-vgM*hYHLFg0wgCo9(+0IZyQUQ!yP@>)H;%pl6%ydC`1K!dkuWoGc4K@$ z)`hJwTZy><!hAdF7Kq-A})ath6X&j)}gr8I~>A?_ycWn0(-?!WssRE#$d-QZ0 zDJODZ^!xv09R(^ZbhrRb#(;A{9Fkr{Xbm(9UBuQ*ct^jXyJ7G)>GvER z^M66Zy-ZzHWseL=I6F+FKyQ-$m2Rf^nVnc1a@{0r^P1!~TvR`;=n6_9kg~q&^$OW# z0dx`fJ^~k?@r!=5B9^hj_f!Ke#Bc;m+=rq9LqV2TB+2V@+&-Sc7Dgdd#k$MfUE;x2 zP`;=ZY0(tdO<@ho)asg0Wj~c}{Cjw}(&P#+x=D%hQ$I+vDsU10vFcF56}hLvDCL3q z>hI2JGBEKjz-`d1d7~STf$!2hS!%xq+s_qoMOVM*IAK^VWsufpwEKo9A9!) z1m{UFaRum1sRV8#0sKZqKOZF`Wf9vq;E0-UaP3{e{K1@%(bv~P714o%$e=Q@Awdy~ zxdB3y)8CQrSBH0AXFwpzA1IpVM~5ZbwLcC*nC$XQfAUdu*Z@wSmK(FSR%6c!y*2qcEV-7GaQ;-v z?@n3vg_@EUO=tZY*Dn~xv!e+#z*U=O5;i5M{@8uZB~ixJ90FJE%2Rk>oH1O^32Zf-MA(0Vz$5W*ziw!$QDT12E=6JCS+z7$Cj1 zqzU1r|B`&Qe=!UgvM<>hEc^hH?@HaaCHmhR1b9`Yta|8R4>NMIdLLb=?z0)g@K|l3 zvh>cird$+mT-iU1;vY%5nm+!@7g4e_bZ7llk&gK6Ho4?;u+@H;WYcPfO%Rp+I_7jxf`P&_-_A z?26P*^^Z;5)O(mXM1Ae%Fff@BOn$N7wj^jQ7Tv6=TYf%PI&2JadMO!kRBY)OQBEb5 zp+NWt?14NK8T9ByUwzmv*KDad{H(-Tl>TmTD^B4Po%^fi4SWC51==g0?4Or$`t|P? ztX7dg6j!RpC%lNrhOvM+VAahlQeOzh8=p`B(TOY0!>)XiClmm9)mTM!qNqnZD3gVR zJ4N4F5Cy%PxT<0)mcw!qBOs^7M!izVlz0|2^I#sIuYg_6Inri>ysp=_Jn?G`_3=B7 zYD0p`uitve?glE9p_I5l>jIEYYI(O&?Y`!bF2~^?8j(NTIuJu7C#5R=!LB?K@>UWre1^nrGf(1%_5P ztz(&(vyb>S5rWDV<*vvs;xP%U&mnpTEwwbJmV?Ap!{V$uVZln#&Cj3BPZ703Z$th0 zzxo&M)w=M-%XsY@@Odgahjl>I2z}NQL~kOH!?7S69f2ajWI3wYUtX`53Y*=iif7$Y z6xn_a@3rn*S_^6s@YRAA3eZIt)J=R}bQ$;|caG{u2WLd+Y4@N*__xyGn}CSi#U28CNbt#g`bfZ5&lbPda**{Js`bZDpex!cYD1#5l>ii zK~uV#*Z`LlsKy`4Pqyz}P-r=&;ti4Gyj6zWpsKrv`Xu5 z@dsF?tDi<6#5T?SkA(Bft!%2-V6UTU!RJR?;sjnausU8o*~xaw0E@Uf{?|s+1OEB~ z@Indxb13TEd&m9TLeGzrf;eUOpsQe|{L%0s#52x=HNCzx=JRo7BhHZAx~wY_=-gc z(iG9#OQ{AkBT$b;b)0h1LxY(ys=Yb4u-KJS){-wBZs2kVHE0+|Cma>_a)f1~hauWe zvylFZ^*@FLDaAJCs7KtVCb#C=o#VDNKM2+BV+kQT>sz^OolCbVGkFCx`y>DV8@t;A zWwErFK7|JcD)%pCXdV7T{wR~A3nnV_br0Y)S0ax**dqB4wgLEiA97nbRanw9@2{8A zcRPBi@!G5i&>HBA%F>Tp635C?(wPjuD3@cRGu_!bjS#b7cwy%B;Hm$hk%n+VeH#me z6>l1an_4@+*WrPYz}M$~V0H~^tcMP&^B?Wh`iaf@Yf{9K@#COrsfAsnzJMuoPpWM! zGvpW@e?8>rJ{vgY(s?q<`5h_Cxo<#+$fdX zM2B@pM%%BEE(-VZ;k5rTO&(Pay>z%#u-{98yh%UcWalTWULN*qeZ-f1|Kn}oSohQtyO{#jh~ z1H^>Z&LnvUSKc2K@CQk>4vj5|XPF8yf7Rd2A(Z>EwMfVPKMr@j3xW+Rw}htl`>zfZ z88)d5ClaWT0_duKQ$E{6t1VP4Xqby?Y=Sh+!KSkB^8nCH99hGB$Qgv6no@P%cqiT| zCaIxGYC!Rc9Qmmgn!SVwoPUtgh^Mr&o>*`M_RmI_W4GBR5>ri(6<>%uqm&i5Wj1pcLl@dZDRM#LzM~nmun_ zH_=orm3BpSB8D+C_k2z7JP{!_4c;4Oig%O`EKVU>Vjr<@{ zrG*3cL>ecPfb?8G=R!3SH*}{UX;*JLwAo+*g}+vLmWrEuKcdTNw?~|9QWF<}Va~rA z@lxRnZW5P~;a%IKy8?5u15a0p8wj^#!yCER;yna@cU(;qaFc@ZWDznq(B=wr{9+^Rw_V5L~8yZ zM*la+@5~6mir60CbsJ9ks4$N+WS7#BgbMY33oFLW4`jDdK*>2#eeTv*V5>(C9{Nw` zBG8&`BobdbQ;>)E4jl$xYX6w#Hp)^cJvsFcOSC!FSaUa}%BHD5xyJ!dqvyU12l9HJ z(7zvgn6j4H*ctu~A71F&@lA^Ul_RPzc<3+X(85A|p@4}5lW z^(n-1cBPRkaWee9Q!sqF-G{qKJsT^2AdFRK>Jj&OY^WA2+7?PV5azX)v;!%(7ZnZD@^=HWdg)#%-pk5J8^;xC>Dot=aLy(zvNP0 zE^!#wpEBfz-_LjxlO&&=q!Zv;;(DT*bdB|*Zd}(b$F`wz9>uwBdVY#$LYn2@Fen(VW*T>d?jo85u<5Jf zDNtqMUhT_I;ZKgW?$;74)Zc*pz3We8YSAv|D;UHFzXuojOMlkNJy{XxVFA zVl0Fp$2E5IL9qI#i*Ws`pFtK5d7o9c9>aJMIaNVjXP0kNH9pJj;o$PCmjGtov#T)dgssD(+YHYT3*3$R47tb?DQtIWz zl3S;*7S+*SdOm&C<$nXwKyTfo990!~AY!k+c1N*n{Hq}f3;<#*0cG4L-n+80^4nSn zK$3`@AiG|Xd$|%qOa=%$t?$Z;Argt=Njjpjvl0!M5_g8IUV^KkY-jvjCkJhD|3a>5 z&a01-!}-mgaQQjd7HYow-mhYUZdd=<3Nn<>@kS}QjAYF2DUocuB@uiV`x4y zn6x#@s;fDDydtQGwPeqyTe%=SMh`xAY-2SwWEWUxo9@oTC2@j(DbutZE5Rs01{Rn@ zqXiW2!H+^GK_!Q4QKw;BE;9)Bp@%UwXXl4jbY3luKCSw6~en$2y{*wz=903Z_`f; z2MgaOKdv-*E0c)UYz2?ia99%SWA*h?##`Bdzh2A7L@rJbl3~67`3Am)hS%CVsRQOkcZV*t@VoZA@D*HJqhROq53+Z*Tjf5gx-lT)7CrIYoTMw|~V z7x~y)hHUS-uD#*aKTT%K-0AR-07g~h($Z2$npyGRXaM5Fvcw%4N@zdkS!jGR;)pUV z#6=ya9QUpE4_=@zHs>Pd5Cn5YK8iZ;w=iFu7p?NVmO1C;__c|_TICj9%suln-(j(= zENa%F1{-Mg7KZ4nid6+t(W6%1aWc>LicK(5g9~9%>CZ-JWqUKajVP>uUcCrDO~Wul zjABUaDQB>KiOr_j_)Rro3f1?MBcIWQnB2Hdmgd|Ppf9wLPJc3SIr#COOvL>)AbCyj zbMIF);RGPw_6-5r2*I zX{8B2@{vWaEdOz=W7aBpq}jKsbsVpHR%95cYIb6(en@DF;Pk~le-o~kz23oY-+{~u z4r{o4e3FgL8(<^v%Xgt-wnr>~(21iTq_C8F+exhLa9=;@_%-p)qCkJ-e9|flJ-$biXzU>G|#tSQzlv&yxcx z-yHwUYdtj#zaB=9G^Tysm)xdqLpftik^PPu%SC2x>0c=h!G0)<7@{mFAF3`1CRi6! z?mD&6U>jxwMAS@P{CDxmA*oCx0jC+TTwFjlgIFZib@Tc28FDacGb<{$KREerEpZ*_ z=yd)X@$orFJ?=Bt_MP{Pz4qFdw~&$As}@g|v%I7@GDALuwB!=1BQE4Wg{&wd!EY7~ z>&a(4KO1Zk*fy3s{P%i)2KQ;tH}>diu*0cq%NS?wn0?QqKn?iKS%JdZC*jVfz>2hi zr2&%Kdu139+@)KdA`2%dRdc3ENEOvgK9IYfc?dZ3hR1v66|;eR{)Fm5yV zB27ks$Qkfve>fdI7c&fD@szRa7_2U~EbCDVOjnc9D^8^Aw>`gey_wsoqxc6?l=V|0 zE#Q@QbJ3keLnqHBN{V336%+goXrTYZy^})69;TVEIwmF+hq2lV_riCKEo;B|_^9ud zD)Q^Zq@ax9JO*`r?-EH zP_FW8kRJwMz99;Fo`H8=fkN4DL;i@dun3~<|11f~WBFWSsHF=+uMNe*QoJU@rl-dw zdHeF^OI9|L4Lw%x7n(Z~4QF+Mm;S$R4m-f1+QHW)M zSn@5{1QT&mUg0HF-GjcRcOt~xi(($!T+4v3!LK8=TY-T{r05OL8xW~cDaBdmHGga7 z5sJe-M5#(?$#ITqgDtPl+ zW9nZ97UWo$lI6$c<0Nfwkcy6$;oq~Ma5Pm92AX2q2&`t|ryPE5nIP(VW8XuX`Tq_T@L5G5G{ z)RrZmU>1YuZxZ_}2}S?<ZyM_5+D=Ar&G2_erQqTl;-#*4V^~T8bxz zdkHe+6HU3Y7&(-EJUCB&Ru^8V)<3eXN9nhTbfh=1(tRD_6t09%I=f);jOI<(FLA#1 z-UEcZVS0dlE>xwpJ*k({IjLPm1QP9VSJyKV>(b9veG~IiJ0#WI*pNGU<_rnqfjXW~ zR>8FYVvlHQpj%c#e@<_Lf)B6$`lR4D!ZeokXGzI|ni9Mc$NT)}Fk-mV@px?LHPc*5bPbDLXEN-Di5>*O5`+f{n7>n-Bwp^?Ri10E3}s&F`V9-n7;GZ{)zNljZU| zmLkx_)+@0yu^Ukj`^N&WZiToXNx`3aIXrpqL)%sB39uk)GQrlG7FhL>VMTa`PC8wG zWZr*VM?F%A@LBu$BbhL9^^h%!0?NKr|4y6Yj7drGaxnX<{?60(yKxDhEVB+4m_5ua zW>?!&D8c!v+*B5_mk4^aupUB&$Cx>XEwa9X45{|fC7k-@v2<$ z2H?(w8x6e{aU`Tz6$rUB=T<=m@x8Nuu`n)DB<`UiGEg*U7^E!IHiApo6Ejzh2aeBY zB|)2$%HUN+Z<#&$Lhqr%LvU1=u`oStHCu{?(8p-cb~fP=x2_^;W)Y0cYa?2Yb53d& zYrOyDphtcct4RR%Au6yKbpQD4`fq3#gOJ*NNvGBC%KmT2kP~rdq-ycUXo_qc;L&w9 z-*rVND`+D?kPe^C+MSob02sQVF#W?LSJQZLy&(@z;h ztBlN>kr%rJ;E@h>G#Oi4XI4D!imjjY+s4$0LoA>ElUJFN-|Us@F5_Y0Ka|Ir3OYL81*?jIOkSDOwSsW+LYNp(iVGKtFm7k~=L#h>K6D}36?jNpzqnClM~8SC z#Wna?FJenPb{CEj7F*CwJ+rz29$>#o@x_1LnmQAlaWitF@b4dv!H%?((o^GrUF|Jv zzgB2@GeNIIGI3EFRN zA@Ty#nC!1{5&u7>M5nXE=UM+gK4uZOaP0XDn1V{xSfS-UbA|jE%66Zft%%9jL{y){ zb@ipJd3#?4}fFu}KHJ08QjfX4r%)lK+#LUMA%hrdNipeSTWq8W40PYJKm zD``>M34$mdWWH}G_(477b1_Z-;;Y?|T7|}UN$-dUayrW((uw(!o_<67HG6flA|`z4d7F6#`{1wh9MTElL6Vn7TLCx<98P-l z((*+6XBN~|c*m3x8m#sm?m7lJ-9;&%)BljOgz{+);~X3QU9GKa?&+J;u5)P}i00*{ zB-ii&f7{jFs{8$6abAjIz4F@YF&5F&cV}PXOvRgfuP`K)oE3E$k7qHn+5kqFj+AC7 zCiLBG{_Vnx6c@G@|2beQ<%%f>fIun@vnLHzDxUaoy_ zhZ^)i(Ez5ICD!}JATHJF=CWwX%70&*m8-4V3Nj#Iv2Egl^d#Sh_b%Gfs2vw~(Lmop zmQ`&N61OwN_jD^!!U3t;W;U8O?F&=|WFINc-{WTb$y|$6E-fsxhEk0l&mq2}<+-^9 zJOs8<3;?JO10#qEh#B{6xF4&n)NIQ^Y6n)e?X`awLfIb0w zoA~24YB68%kk(rn;vGIm*0rtl?VU`6nc1b|S=DXhx7?TuBM6^HO$WV;bwKJRoV8|= z{@%`W$msRlS7Ykb2XA&fVt3^Ah9xPt%^h~4^pl3Z_VjZ*fT{}R>?ar~8@WDYce4?s!^v|8EV85Q~H!HS7vfP)jTw(?|rokJ* ztzuQV($Xrcy%&xpMab0x8*&*(uj|Ja@E`-dYBjIkWE?BVCXR}#?_0lWe@v-b01PEID- zZ7IUy;|);(y_=R>Ul!rOlWT`K{@1lvK>bB8EMDlZ8@V!wd0!p#Z&^^c!A(AM@0Ft= z@CJWG)Q>!lWB~%Bi?x#Z%_SZ>c^+aT>R(*d?NkqNn)=FVj)T#3n@Dn@Vvsw~*XZ=p z9tRlvDr#q({LFoeBUV^yHg_>5lw2=) zb&n|11lR~tW4XLe?F<6wVm+9Zi~AuhJxIpSrJ};4J!x~0 z;_q0~OPPHq8ygk4>gWZGdBk?#0u|iXs?CO&Z+@4a=@j&sQT8dtfZazk*Q(*pG2Xg|T#j3?i<`Mg*=2j^6z6ps-QKy;jYkkX{d3#@ z3pj1iVV+6WyhZC~rct~FaI3o*>|-&KHRAwO{VK(zdL$NP$X%?XKXtL?N7Mr;_XBH_ zxXz2|FWCCmHx`YLQ;SVjfkX$~XyCmFJgaY+YWXYzvwe4I{Me-)D%1vq43LIdoFlEY zUMH<6ZT~>DF~QQ0nl`3+AwGdM_=4ec+b!+B0$epU;=s2mFhr5nL!$)lG(3b-DH8F7^mCGuBlS@m}0l^+sJzB~BO zO0RMoRZ~N6@$Z2`syKRU2R1~}wK|l-Dpn(Devi(=n`Mo#RNjFPal&1`ynwLI`f(hq zYcNb>K#Zsw@qaO}>@4i@kFm~V?e`Zb7b~AEWjAms8wDc^$u9631*{-ioL~8# zxqeIpc3UF??RY^y6?J^`JQ}f!3m*4;2#+=0=e!w%ab4BsrBVrD(y%iZb|Zmi#>~;8 zEKEw+Pvgn~<;e+%7D8n306do&OL|c+@+&%#K6Y8*J@oeUxO>i^e=K$ydw=rgxi@PM zkls-JN>k48y|gKf4!Lh?aH!EFePcN|%P>L;gxI)G*BH zPo3)M+0jA$J0Afib*=lmOy|_~XSZW9mC_ZtTvbOCeM2PZSMwe`LEh#ZGhYfG+(TwJ zxg!|{w+7lO(-Fp-ff;lk2zkN?h*$4f-k?0|-S-e56s1;E-KX_-ztmg4I>O@asUvji z+#&z4$kQ-!w;Ne{a|(v4{8WKbF1ly6yBX!DmsQD?9D`G*xSTHqemmTJ*Cb55Q9_2f zx4dcb6u0XvHap5K_sT2~m@1HdO42z0Yhb``scW9)*C1(F5n(0#zS@@LkjBG8FnxT7 zT!)~twIb$!~>|`k@+Zp^f#u=e|{wMwoUZQx|jA;IQQjx6|&z^AX1Cf zeHu+c%BtK$@@nWH36dWrl~A#Dc;MWo?Wr(f_V2gcXp)G29h<=hTIqOsK0;$%`kOq) zY_rM5IOj@tZ}zmQ%V$&b9yPsBADT!5>>RxC@@E??R@{8?NO=~ z8$4)p`u>=^RuoHZeTE#fy^_F7@NGfh7ZSmX^~v#(XBO2O>DnXH)Zeo(tC1lUK7{0} zUQtwd0hu;A`J@!TM(%8IaFYX!dBQ=A=p0K&G73Md`fr+X{HqIe916 z$sII>NZjTzP9@gpH}j30v}Vh7}1CN7|5}Y3jb2RWi-yF+nq3kFB=80J`8q!UEjy1fW-Benncis z#7GDobdXVAy8iwAQ6xCWA$97?G0vK5+X#7PA8twRy`@jgL`&tgh+g}sF+ChbXA?aBO$@+ zCh8IIwzaU;2W~sZx_(#^5B@pF{(%cBxUjumu!tW~UcN&YoT~l?3-VgJX&1_uRoCs; zRzRYWoNH2kG|^b-J)vC-9qFpjrz{w>S|J7;{sWB?gB~hOwmZApbTPiHuSH5r@@2g| z^xl$qZ(Ug*D#O%>)y;F zs^QiD3yE7Qn~s=dV73jUD zJvFt|tlfkQ*BkzhvOgscXKbEZjY5}hcuUi7f%o0zT=ZkNan_GB=m@vyarPrG$1&~; z#4pSv`qzch8qmzaJi-k<5ooyrHK=*zYhn!1R;b&2z@TF3iw7jViTX0kqXjt99ZB04 z^2+yx0-f)AWz@EQstwb~U2qIw%7K;ASIc|jd2P=~mN!%Ji~b!hlR9uGFkyhNcX1jy zvqNc^P(Ys+yThJY10%_VAMb{PgNJ=1zk5}bLE9hUz8N=_zJJXvWWfSnttCSrdq~N` zxzl)FtC0AY#<>8m=*dnPy7Znw{Mgx-COc6(bd2Wn8A5HZ8X6qTY_;%B1hO}gT-uI= zIq0PL!f4nkll`+;PV0#4CaGu&L?vQcD%jv^HXke{P`MxLjPsK!TWVGpW3r+M%D*3=pkHO^V*{X#*{el*ZOnG-XqP7znJuy0T}W4m~540t{|n zJvKx}51ozQsqizM4JVGfpSrtB6J{|d@|pV3cJ?Lm5!6fGQ$c})UurWuYzK*s7vBkI zt;|*d@_>hS=q!ml!?Xd^ ziOIexcM2qB8T3WnR5J%7IHc0akQu0;sk}|_(j#8wlo#B(VRqf}ow}fv+p7GH*)_ay zP2ROO6RA>0S#&ebTDaQI(CgOoHzR#-a!E*YrBUU)H9{52&9B9MApG$_)L>Av?-mms zCKXnR@a(%Ez2h8Hcq4JH*EgH*6NUz9_c`h()DRCXR7u?pY;807fefLbiAIJr5`w3> z*g4R^*Y6_;&E7jJZmAYz&VNo!NwnGEE(JVS%~oSUw{y9vig9^!s&$`HR;fF0jHO@% zae5~kyzn^;OZBZ%T1SBBFHz!iwJ4(Wb~c6pYM7HFT?s-qj}n>tvB$W&pPO#PO?W~j zc659eCegk#-cqn^@Z2a<6MjGH!?WdA{eH%f^3>=u+EAC&X?qQc3?UivFIiT3{aj8z|6eYOwyPZbEgzzYBkaqms1!d9K6Lpgqo(+&jW8e(b-? zc-3-pp`lzFS7fed};le0oC;6EG>!7eJ|DM71!g0i&asKj3c9S=e;y%kg~N zHYA?O>%!5^w0M;6>F1bXDuhJyaYP$z{8{)=D+*!PulQ_gD(1aUw(spPoAbpJ9H-y< z3rB; zx$H@*{xjbVg3s?Ce4=IdW8ID4{Q`teM8S0X()zn2E^c{CMf)Q9&4*wqgVP?0F(AY0 zA6Zw^HAbyWoupvtpwm)2da_XO$3pI2OFj7snTqiUlxjE21M_i;+Ozzu$5P`60fT9BYvxHg4W1Ezd=ic=YZ#K6@_m)B7Uo-<5fpbJL@@6 zzuQNsULEDg1x|PeS-{2W! z%FP!cxsO$Q9Zo%#>Du@{)XK4B_|H{`MjmvW1gz+plp5mWzp6K<4<@d6k|558qaJ-8 zVRm#^KW2J~0=dI>6xn(=s*;^pBf#u#1%$c2fd4FfzayQpABHap1)38X3NK3<9j3AV z7CSOz_DW>{V?#<^ttIX_iDLINDV^J)-!vXIClgQgvISW$;{JU7`|O zU6vX6kBFAX5Y(vml+GU=nIJR#FEv6%%~Y1Tbg!tsxJ8Y{S0uU1F%trGY&!Ew>5(!= z?tR+OUYM!vilQ0lHYEbMnADEYp$Q)@l6!9lwX!InXss? zM_DizI#S(M^gbz-TTA{{LzfN<1r$6Op>e6UMioYrMBzY>klgH~H9@T;GoP8kc1*Cl zVaX&Y*>Hq30pji8ZB9|VuErB=B?sX-k}H%;oT_o9Lh#eXU<6zmElhf<+yLJP=F9wB zbdN)zsCvfM868GN1XpwI+bLJE15gEKYO+z0%;HSWvWtqO{cra0=~xUGagjRozFsYg zNzj14eYgNaxNSMk%K2^op%Fa9!PvpCpA+j}a{=Rs<`XK9>I zPN1%_@Xg6XlBq4{J;ruaJx|pq?8iwC4+TB150&vgOvV@w78rLHwBch->`7_*NpW~z zIsc{CC7#Qn01?i2Y;;gi?sEw_pGHNySHaKGLA#lQEY)HgzdZaEJUo4sDp#XP{;u*m z7QcIe4$JOKU5mflOWW?y8rC#puH`Y*_dhNG5R%uwK|XV7==f?I7`1?g5zEnkE0Wuzzf~6_{V6`=lSvaQgfSCMzk`2K&t-N?Dspw_!)#~^#B+l%>_Zc^UeAGrcDrq zTdK_jnK|-p8cPQObR_ll;x`y2``!}Q>RAEq1S;Z$ap*qg7jU)H>~MjN_qLOkvt6uUTD>sIs-{z%%*!XwpGhV7KAo)P+y~LvA`5Re3|IqXQe|ivS6RO!)}||Ob41D zRn7n^as<{z1sSK%*bE7NT>1kn>ylde9>mG0}(%UYGNUFx8Ls z(|rzCYj|yx7iz$rXmjU@F}zrKw=CPZ8}cM{FVwV?`^D8$;?9Z?_=17ho4*#Sq6NDS zVT z(z|eToYcyFaBx&wEm;9<=CXuI0wH<1!-?HLPki1#cvYnMYl7j7p z#i(kE$~ft?&B<0c1M9ZF-i+Mw53Be)@vA{+t-ZL#5a!moY?W0t+`91JwC?9<*m_3f1*Gs3r|K=wb{{ar%AtX!c?B;9XoBpcde?DA@P4JjszM1FL?J2lhJv|AjZEdK z4r$y-%b^kVcUdlcQD%_iJFGoF@J0=-EptI*VooByQ<2P8XE`6^$V zlzD0;tCf;xaFlot%lm*j^AQaYcP5UHz(;quUA*WO{M9*np}<7>Vr@(_TW1td>x3C& zNNTX9nqvgUf(&3C_=z@tDt0AU;Ps(z*Bq=RHMNC~5uLEF@{C=$OpK+E| zgyBQ(=!rZ(RJzn}6MFkrG9g#fDS5LY9)Jnp#p2D|**-aJ8a&L$62`2qP8$Y(N%d)S(b&U1iKIFJx1I1 zCI1u(OdG=}6V+U*Tkx+#`O=ToJ&@Z9J`^Wv!#{@8UgGy}R&KAwL&`O`Dr2!TgFox~ z=Wa;o3DvA-1QvUy|I7K@la{qr?o{rU?5yWiq<3@ra3j@ zK%bgni3@iBgwxaU$+D{7r7^vpHfOum{%>qY({%Lt-wzW}S88{u@BqhFU&;yfx0?|6 z^m&AW1y{832|fCIovoxIiPyXVQC#O^6jROq-N&G8H-=87F6qIknDd>zE2>#xNxS{Z zvx|N<7ni<$1zbH02|#&PttO*h)lJY@Lb zO3YWJriQHYg33@(Cjnm+Mc_R$`yJ1OS-l8a@mO`g?iaNqo*n2O?t5#G=LSA)wH^Zh zRLYyKUCsAJ+>jRp45R*12H}2>=6qS%Pq9!bN(`RG@LyYp#*KPOMx)6BTSvOxXLK@oa(mI9WFsL-2VrQx$@^*pwl}z82kY_o*Dt zivMxR`R0#(#D+T9a?h6X6jQ+q&-Z=sp*%nq- z*SfT8D7h_P(4nV6w5|3SuAI6K=;pSMH6bkvC?9=Z<_E-4hwq6b_~tc2b$v8P(e#jy zess@(7XqdJwttU!J!Jc#ReX8usZz+Gg$w>*ycg;@+Zb@F4d{n2fv8LQrRYR|)|6dMO-QMfAXzwj$aI+0wr{y7dwU21*x28}Xo znQXiXfL$>c%Xg`aiSY1p z@WO~1-ofEdHH9-$Mo9$Hn@>E&v|BjeInsyF_*y1h&HqF@`x>meYB6sV97xZSoJi>uw5o?v@xr^cF2V5L_jW9!aTxz>NRh%?B z(b<%^q`$0`;6j6VMlD^8HsZeNZK|q<%5y3{=T<{@fT=q&vyPZo&Lcv&0mTp{RZe9 z>OQj+wa&%rwe3RC3E{b&9#jRLndG|4##Cyq6GIoACn)rkOm#Xy+immlaTo9sn?)1y z;}1-~u(!_(XcWF^8@0iJVJ}IoeWllr3kjfSZc|wYsAA9_Avbk&cFj&+56mFdcH@6q ztTQgU!;bcj%YAeHg?E_titH}f1$@ecb#Dg?AE z`V>9trcYVoR^w%6S9@k$dOsdR_cVH&#b}{&l`C>>>){*L)mUJk@CB>3;MW5e`~%jm z()R&d{|fviaCsb7P)8|t7h~SEpR*@kvfEkcLB(cg@qb)%35E#ucLNviyMP27$rFnY z*!j=^E$UE$+#<%T99T$&#&if7#{4x-HXG?yh5aSz%phqr8tkxJV?v@POM-CEYtG^& zGcNNk^0wDuN*ms?&fLEy8XzT5`GUe7_-mQWUxa__>Sx%Qe5y?-(e${oE@GYH1qbnyIBTwjl!aWfUZT!XIQ1FkZ1@q{8G5T^v5G_j zq@yFM|6(xTiJxNBA7xUw*C}mzcfCg(#Ng~)Eb&Yq?t!JW{-Y7&*s1PDa_}?TjwmL< zriyydiO&v4J~T5%+h(221LCJ^`?K%*P7v*#t!=iT$_v5rllN}x65Gl^9G^OC$@O*{ z=U~!w=I$Po%bD*P9(!hWhx^{&f6H!c98B-0xXMsL5{gO7&HhB{SMw)R(TPlaAqGn> zBmk~{9lNsl|DbwrB-)|aR;L*zuV_F(&DCx z5K{M#X^-;d6{ajnLHR9WjZ`|BtM<46AZ!!-i=@K}1SGLXnd01_9}AsYQ2(vS<C#f?w;Hx$n7Wt~swW@T)k;M?AyblZU~;^RtNI zqZOE1YzHfEDB1Gr`|Q<9EN+nU8BUxYddq>eVv;`JlQco5f(AnT~cZd|hY*zVO-lT=y)YTY>ivwAM ziEB-fNus;G)=LB#;Y4mWLid+DKE`s!m(eyxUI2{ei3F>EQ2%D}e|tL`%tbnUl*nlA z?`h{+raVzWG%yQpl63=3iJUu=mp?fPALjG0)+)B&%Ofl@q`v11Nz9qlAzImPz1a9# z8c(rDym45B2s4TCag*<>Lc6o}@M&?oaJxs?oTEDvJ=y7=z$N_aO@RXKSu}1;;E9{6 z8eiX#jj47a>*!;wDmMbdN~C!L2(GD3K$0eWFBDQ)|AW~5IG)btdQ5dT?w_R>JOZZd}tdH*vuOdIk+^$GOS5=-0a_&DQn$ewqj zEyoRDl#LFRZ?lkUl?h0fs{;^8(R$lZD-=;fgXY8NIud$ZVCpa1t``c2?`b*J&|n)5 zh7Lq2&*L6r6Xb^D|Egc#CqP~FIBXyU-l$(YjDkHs?oH!7{Sju zfJljQ)ExGUFF`b_FrUje4Hg-U!^8RCxb_XF1ZM{ePySV+Wa~G1SI8F=JaA#hE2X)X zH}o|;n5}6i>zQJ2l_apF5EsV;n+&9cis^n&Eh0KQJ^w4wgTDCB#p6rLSaEFS2^!2i z-=^KP&^mG7w%`{YNguPiRei<&GdLG&aikpDX<}1KNps)Sda3c;mzqLnlZ;|DWN_LB zd7*BxwefRn1=sKjOR>@5LAk%y8D?cP=nPN7a49(%I6ZeG@|AFmoZF;B6FA(eZQ}k< ziC7t{5HFaxH!6fwn#=sPAO8sqD1JD!t1J+KH|k8Kc}__Q=7aX<8M|Bt0MXD%xNMrm zum$lDb&(c*?k>>>k~ziP-B){y%C#!d!b!LzK6{FYh@b%UBkB1}c`8^nFAsxXrpPtV zjr$-BrLJ3XKkZYm(T>Dho*475PCq+j8NS5$8*6it5qUme0&nc@%I`gJM}{<_*@JcL zr_@Lh^xS;!Xzp1^)SEGtEZ@m;m#54#>sv>8+E25LuhgjKsd~_aOMQDW^=CDRKR-cT zgj!*-leSTn>i1GKs))V*-h;V}@9G4KNrs2enddlZtbQK8u(!Lw1GmlVd?64>{pv@% z;eq7dL9wxTH&?sm7i*EiaPU|1YA}_Toh^UHMglmpIgZJ5i{~ZtyE3t{vs2<|S%LOO zOXZLdi55vU|G_V0;HBD`;d2+<+A6B+)I;^_axS&quGI$L z8(cU9OpiP6N5V@k{-I8ikFntp8AOPn-iO`)u2^Ig)xD3$P(VrRk=7XsCvGNL3baCC z9yn1Q*-gb58oG-7C8qY{Ja|;&Lv3io`#eWwP_B(LFs27R_Oh8`O+(&Te5WpWiINf!L>T+96D&?_HS z-**&9y&&Gl$|TY$*{WGKl+C2)mt>4w^R-2bTGijXHXEfK7c@2oROqRT;r`PpQJ2cw z_6v*PEi}*Fdbz>f>d~L>$cxDimf;zr1_<{1sF2>ZTbn1>p&2GUQt5IsfMiZJ_fP5Q zLd`y4TZ6i7w@7QMJz{(@YBDuB6I4&~!zVM8i`MX+X>&c@Fh-1k4bgGgq%Cyzvg|8S zw6zoid{pu_wn;}#4bN9u#xc{PWVps*MKm@xcDV(eJPh;Ih1cEX7S3aThs%uw^hzh3jcSV31JgM-E$DyaGTySszJs1gVJ`iv)^+3$lG z9%PZjABJsT?Mg?z!S?+r%K^Cu1y=d@VAV#KZhzrJ4gh6*3)Z`30lj_L=Up#XIBIvH+p6sS$qeXL4;Hh*^ zJqh*P%RO&7<9uOb&Mc*A&aLG`#@s5)A~mA@ML~x1+3X{(S`dr;)A+ZmuF(CB^Udj$ z{tHekH54e_b6Fe>D|~$Xs1wv==Gi-7<|_3TbzmS8PA25Z^IRk%k3;FJYext^j#B;^ zaPO3G3c{FNtKR5KSj*4wZUvDtiL9dMgyk7l%_+5i6?I1%j#;Wx#WlIkcCmaYYWInf zCFA`MsI)$Vw#Y8mZUUl|{k1#4HEUMTUT{LJWnVqNtJJgsdUsHMC+vp|cc zCG9)pSV~7i&bJ?353Ne=ZAB5zY$ad?5Za=Yw@ zy($6SdHzy72_1_VFUkA*Y#+K2r^(ZN4bBhNLX1!X#*p=6iJbnQ)(;rf5qN5n*@I8f zYvBqXJ&O0X(BLwssb3ud!JqJ#Pdll&&ALlqjv%Dh%zvHg7xlrjpUwO~;PR=eM}o$? zyI~|p@>f_gjFPcwd7EO;xBIAOa^AEgL$T7=L2BLY?%>o*wl8KU;hi+@KTg0~h!FF3 ztF`gJ5S1biftzI_B+(kw)klTIbmOz>jtO~cv4tG)*?133DuG4Auc-TVAh68PbN2PM zX6lq@@Eh{bVEDnK>JArS`kaDl6|wuKF6T4w58xE7lKlkawP!NlWS+@bJ~o;K%0;5( zhds1=66_HoQ8S<|LIAS5H{f}Bc@j?cIlM4nSu4m?zsL5it`!8#Cl(x??2J(=uTMW> z?g>?P7j<-GB?F&Nx4_Lykn}WVboyr^q?M_30Rh6Q7}(zko)6&k;9E`^n)2yXOXj5{ zt{DA;zGOxD2(#anx(^vdu5skXQ}!yjUQ^E>cxDjg!1&z4+ncW#GeNWEO$5*onMog^ALYSQw92%;~S%c=T8pIqVgt&%5klwpqr-nDX3YQ3m6Gd2bKO+t3Cqt2kWNVyzvU(m>fc0{0lYZpg(nPTbY>$9JWAC#xVXYwXx zus}tjdVv0eb2>z8>djONPg{jfuj8AE#AJwN_?v!>(ot$j!NrzhG#E!x)@bubw+e*A zV#&ZZd^6eeB1gk;0UAIGLZvyj8Gviw(qVX1dhp&#|B|yayX!GkTs9~Ow%Q#r{yJrN zyxih$qm6Ex&Qvx6oabt3;d#KG*kFvwLeCur+dP`Vd0ZJ}U5jeKiO%VmL)=_nc_V~( zrSkAMxF20zN4%0bS}?pKKFZ zf`?WZt)9c{KhCWGp{Qr5&bqr}Wt|~%H6c;aTOZOGz3<9M6vE!Fe9`~N)qbZN*(~d^ zoX`0$jy4s%kiL2gmO+5?Pizg8L|&K!C~bBN)1teqANxL5vKSdhSX>Ixe^0Sz6t5^w zQ*iNhGJNy}ZQ83Ey;-xTPNU~i5E*$S$X!RZS|$3EIZHxXuyzAA!di}$xSY|(R3Rd= ze{p)uqZyDNIuy~MLxEE9oo)&k0Z5rXt2?TN9vLavJ^KCa4d)=wT38UYLYtB3b3*yB zL-#BmuJd&Amdup`CS1tT=8aT5!z{tL7s_1P7TxccEj1UYG+ft1?I{OYU%F&>3N)8D z@;RYx3jKXPFHY=V>oCAOLyrlv$Yi48x~ZHt^B#~;+T zae*{7K10!)pu!KDd4tZNjQdO2+)~;F7(^iZow}1Osl3fPS;1OwGU@Fg+(7dE~{0 z^ne%Dhlpl#+M7q6;9~4odQ^4oZ6=t;;K4G(DSPnqO$QX<5~RkZ2$1Khd9nVJr8>qS zkKu~|m)o(4%l<59^nI}!ScMIh7G!nxJ_fqS%AE$DF}?Ah)p|8WeYw+L&OE__h-Yz1 z_T)aQi3879I~B}ga*FXIX7d$%~0#Q`eZ92P%NV_BDF`buVz|x`RDq7(V&hDNtVK{FhQvw%aa#NsxFdh?JQSUE>kI^YCkGFQl@s_M^ z!@R}}C9KC@R{O8468`B__Y@Wp*f#*qxPISmWOau*>)eP;BsUq{8+ZE)P#GmwyHwk? zjSad^cym~N^?Ga!ewXFU)nO$ z>J_jYkpQ;v0@z()TmTHA2V9}1REO6a-GGhoAj1_TW^SDmyr8Q?pPrw=n%w=-lIAl<#K^}l~G+%J_OmA!FOu}Bbam)d`uUJ_QA-+Q0UNyV*1 z*HlswCP{%)W%npr2Dy;4U||*U@U{L!?>vL}X-#F6(^jG&*hQp z!bi>Tx)7V3LuIDJL{{V1Y$gwPQxFOhXggOUeii+dXu|zqSY)Q#lnvoQj@Bmo5>O2_%Ry8>Hr(Yr>j`8H3IBmfTuz~@!Tdg#+a>e8M z_(VmBdE=D2q9gRUD5(z!u>j9!y=jnWZJCA8Vzn1Y9cb;(M{6oYhKo&baaRT;xjNlu zoC?F`1L3iH{G{{SjeTMY^EG}Av=U1+peEi@uY3T%>i^yCYOR`eZf>9JPO0dW4s3V` zcEg~Vn}v9ykrYIqHH))xML#DnOK!5(vk1AC4X-Ix>AxN$0xcEiFV+rPpBrp%Q*sF# zD~oapUX3To+g!7-gz9wssXwMa^5`fel=hzmIq`hU;iC3pFV_>NLUohkf5U(fM!2rn zlx_u#d|N55e=gihsvY4lLPWhbO1k{%JTg(q|r0k@{gZv5*0S`BFGnPZ5bHhfKRG2!W`S$i9j+H&TUNO#e z?$a}}TH1N+0Hl%^^;x49E>7|so+p#F$=R?~^94c@>)>C_)F7s-_$Zd-1fc=Yj6eWo zc22#TG^0k8?_jlaOq@kZ8>CTv`KOuOxZ1LwX9c>DfE!U|Bw3Qr^2)raOx-4)&e4BJ zyGf|8oKpkfI@YV}Ny@X@fzDtI+v|VD8uI86&0k36WTb;LmD;BMmeBxQ4v|-i<(?HP zW5;aDE6}7XFKVOS|A(PW&_Qi9h0B~PQr=9Wm}gU4D=0)y^ybg$oBT?p%Jw1-`xUpFQwx~7>0+OZ_n9mT zewL0Q@w3$JQFWdyO@2y@J}V$r6}L$r0W|X(I{Wh^zjFugJI^sUcp{)#E1CvW4qPTK zd&d7=>snwgg4n$N)GEtd?%I1iDvJ8+_d3z$wUFxLO>>2@dEq1KJ&SwPg*|It;j7s( z@@r&U4lVusvp$0_(s11!5qc*iKqY^L>(IXGJM=wWR5b1hChsycf6Q3N9uGpO-#`=r ztmQ4=C!v0gU0mzKgb>-I;*@aW(F>hFa*}mPr7)Vwyy3gu$TUB7bPtERt-RD`ABC;F z@kiA(Rr;6a!cX=e3+8eRXIC?^d#;mk8Q^@JW%pf~CNQFe;o90~#`FZiqkXOj4%(QT zZk&4meq40ZO%iOuHelQ>AcjYipHj%?<^Kgz=XpytR9L>|%@-YoAMiAD`+%h1dtK+N zX38kLz~~sRC4Y;`OAg4O+PD#NU@Lo z`A)q+4=P1$qg2#eFOKbZ7hY3V_A!&WdXD*$^k}8Am}iW`DXkgE_rCPC61-D3CPk(9 zes1$gtbl~zDv;%Nh{L{xWzME$E$*N@fu_D@P-1>z**Q1gaPQ&UuSS7M#2g?3>B+Ui ziPXdA1CaiG9Uk%p*=g=oETV>=MT7gR)Jg^CkGfo{s`pGv7*7|1suAr>q_Ya&a;g%+ z7nRtEX0pWke<_Y;i272YeH({-z(1=T=o%5;5LAdPy>tHAGpBm04mdU1YHgo!lURp6 zM*oO6cA%Sght-Lo-{d`u(3wDe8{yolk-29>@ly3}+VN2)vwyPM^1^x}-U+^~n&n|x z$xdc00p}c!>r=B^XWV%aboTJE)egUXVI-0AS^57^844Y@vT{?-s}Gum4ec`f){Ke| zcZ-~d!=ve<;lBis@ zFPQK%3e7NX$XX%_K0at4o%BS+LPYs7xl5?uyAi?TdtumYL}7U9B~M{Vg2TYN`UZ z;E=t!&sq339VtsTX{>^A*HOQf^dIeLYJJsIysS@S)Nv>`ep;C(merZ~hxb&)_uFmn z4tQOkoS8*vm{aJlQ!1IaWfg6edTqWZ%{VopW?g;Ia11PxjYWo4vFJ>rG|^#7PGfp> zhpF^6(V+}}L**4ge>(fY)^ z5q}K&<&WL6r-dHQmxKr56qU7$Jo@6UApP)CW%N-C+ZN}=xLYYhh8pKDwq@I$nFx=F zpGNx+a#Tp0V^L|&+cqzoViEn3GreUt&%L#HrU@fMkOxh3Si8M>m#EdM;K5xYD=qg& z($u@V`sF+FDWkzipTBxROJ0Npn|vS|_elz6;gfL&L)_#`RV9<7tk##J3z?*d7O9i( zo~%f^4L~U5iLlh^n)&PD7z56(Q|lkQk|`H>hx$9PyxTs?H>&RQhM0fAgfl(DZ0V#Z z77=W&!xLm!vZ{mJnP~UMfG_Bv;Qu*)*p?eI*PT!3OzgGq(?4OvPkOyeb@X@t``2~p zcrkE5Po>vxL*%k(hV* zs!nnZ%NsC9hRRjMG{!Neak%^`L$GKV8@qk1XII7D^y(2)Zc^2MHeV;yvNyhMikN96 z0FErRK!NwORQ>9e!1Mv7e55ZmE;6kAO47)@fU&X@r$%#Rus@H&vJr})L$7VH=Ubmx zNSEe2N<0n>YeN2l?$zoIps@(}^biAz2hTZRA8~IEwa%E{n}(H^IrC4NpAeYqW-XTI z-vk=d;at{NeeV4{MON0l-x29JSwNE;u-&>xjg6K&=u5iiU#{mH@nOr5`GnTR1czM( zc#uv$x$z(hVJcD1ISG*P#oMcmYs18Kx*Y_H1`E6oJs&kKWpioEKP-FIT7Xt=QoqWC zhFMTTt!%=0x{z_%pAgKW!5n}X>`T+TRY05Td7xB6m=%vnTy^5tw4Ypim(T1<2jYU) zbEp(1YyBXNtU`ok&#Uj`a^Cq@yJ2-2mH%~d?8M(*X!m@Slcq`}i@IVH=B%jHTmi+6 zLuA&fYq(IJZnNv$4kQ}N=}%?!ejX>;KDMd8i3A&_Yb?DxEKr zJM$I86{!?P4xluQZSy-)wL~|Y`rlQw^+{{pW5mT2Mt!4irr|7p(u;kdhm3CXuRb5V z6IxgG$FQM8@_yFXf-ksg=iXnP`6}bnT51vxNMG5-JU%UZ484@Wx|jb=%D-o`m?c3T*Ib~T-$*gL8=H{&1pNz|Z{(3jZoC+mAB%g#_%s)8oh>}PuC zxIp%-lxN7WH5hIb_F3c*YYknd@ORt=4d6WuGuCA9;}O2K53__x9hr6@FWQUgu~0g& z^VhnObbeUU@H|Mi_@`SAcJ2q08ND%ISGgJ4?Pt?1du~>8KIY>S-<>=ci5#k{xn1Ma=qf zSrH9yqItsc( z5);!#b7UUBYY3+W7!mZvK4DCXQf!d-Qx3c=Sm0p+ew9C<9g#30?XmeHIa-Yiub~ETo|YF$4(=~ z9_d!CLl5wo%zq;VyOUGGfo}q{G}i+A7fRMQcD2Xuny4_7Bz>cc-EqTd^IZme6@1CR zroFLXw5YK4=*_!vslpYDF@atZ8PwiE14T(QZNF!Lb2aE-KIvkT7^?0jBb8*hM?N2U zfBI}8cYyi{{P+}FURsIc%5Bj1o8IvUfL#A69j!WAYfi;ZIPOc@V>xHh03Fa1E&_me z^eJ6u`S8UAjZknqq*tU7$*tDvpp1I%Ja<15*280|QU28q_Hxm=cXB1*hC4}hEC#I{ z01Nt#@{y>tM*1N~*|5;Qz$}J-Mk4ytjbdtWvx8yuY%s3q$$S@pAn9YsKZ27zt!f^9 zUXvL-yMu{0ll#cNYUhhW8>v{<3Ph>^TQhHS0*lShVm-@Oe5MagY)pPb!HQ8e~m-hse!|sqQ zMJf46c%vpqSmgwN#V>OHC#QbH-awIKex!23U_>A2mBNXzWVT2<{yqElpmL}sX_7H) zz`t?s2kW;Nr+$B4!x(Q;9L0G(Aa7(Pj!oR{y!6Pkv;5=YRa6o*<(H{4RG666O+sth zxVU@!M?b5M5{-0l)-@B@7S16)(P`8QlYa$-vQ#BCd~L^K2`kseTP$-@@5QToJ!$d& zN8&OLP}7%~Jwayby48A7lftMHV|8X=SWjm}mS%MgqDX{;;zc7YQ)*Qq}uI^o_WBo z01Pc}YI3p$KY?dDQYo&aF^>yAiOoYziU|p?Qs6hmezMb=oQF_WnerGx-YhlTkJwDDk zssM6=TPO}1ukC=23Eg_CtOGFfSzKr})5|67ls3dknu{y^j0YZY%9*3jnu-aN?jNRB zC9YM>R8zj_0bw|!{ad@PQ4dYR6{^05-lg}>!X#0Xl>%DhxPB^Tlmq<|)JOdZ(|e>YGBf#!DaA;OQ%HV4xm?KD6QU-YC7|3k)1Oawr`ABwskpc} zDs93!XjBHw^m`Y5pMFIZ^=jg?YuCEw@aeL&yk2#orC^oE9~{bD5!7;SY_j&RDrb~% z(s!u5=9jU%8_5brl<_S$UVETM&4FC0g zb*YNn>ig(BD=c?AJ<_G@n0-yNV3}Ob0xZ}Y<;l*3PRD)W2$g-^fvL4z0G(QY8~%!L zXpOqY6Hh*v zUwTf;QH&^_HGh|m83qp0AIbi_`C0T9PTeYr1}|DW{pUg*78i0kH~Um|luX^c;$CaQ zV+BKdvnsZ01%>2y${(U|u~++JC_uzknxJp?VMu+-qTxmqFLv@r=FO{_p|sg%*(WxK z@?bkTlkVUKt5hapBMG>M{EvtGv!@sdlDsZ-&(4EW*4D2%mjgqAb#!#RU^PNnblW0D zgZhBxd5KQ#Q$RAQGBS?|3wY2|s#!b9_@x6+$iD{nGrredJW9Bld zx1}Pq@Z$;M?$Z2xNy{7avh~Zc`aPQ+D8d_S~<@LR* zTkm=I-O{M4fGUmy8d+jy<*Bhk;K{azUl{zG6>7`tQLJO1Uf$E}5qC~9zj_zsxPyIm z0HxnhP}kGd`g%UOHs+9=a+~P!G3_4%q9W_UeyDjL!Thd4vGngYrm(+q2)D(iz}dhu z3u#`rwN(3kv+Q#5ROi(C!XIJ66qukXBRHH_4#p_q#0isMGcr=s|Eq&v;L6Cx0AUNq z5#^oaPv-d`Eo41i%5C7oHaqzU8i+*_K$8wdD%I&)-v&D2+=SsqFAuSp+K@m|&gD{D z?Cfv1lP1dzi9btY9|h9(l}Fd(eunz*Y2K8}_}2KA%bu?(U3e?>s4f zmh)M4)|65Zi5Y0R<3P@3?>v?h8AeAZwd&Jyvd`QQCT9FBX!li?k-3H{CQ;nvdRpwi z))oI0!uYkL#9G~tQ=5$g$v0o*gj&1!0=9q3M@qX&=5;ywgsI1(fABY!4^=VYn`oah z?TIuGRfm4VKEs<)R0}W#OTBzR z0NL{&JI|hG{_Gp9)HU;uoLhPG!H4?`;`{nGTfMJgCV?4UDcx0Q+StOq^)c@^1S#9? zw48icn`L8kwOPq+y-1QS3!b6w97j9(k?AmRv2j!$7{%9&Od-#CmY76Ma~5O4K%LI$ zS;8#1`Rr`2w}VO5-RH}~8<4%Xlq;|}&2?0gvLKw|n%lO;niPczU1$ zN37(@x_nuyMI*ss1qyIB3(c5)w?ty>g}#+iTlB-)D;c0gi@$-I^B)sUlVw1$e$I#T ziRC&i`Hc2Xh4--X?L(_>eJ0u1ET=GgP^@S0Mi)}iFz!k@iRMnrE1z4_j${whU0h1_ z647_J0n!}21#k}<2d9l0`d&8%pV3|Bqt8X9mXjB8lPaGOCXuAao=96lE8)@?t$W_! zf`Rxn#tHTDDr2gTBZ%72Uxn4pz1dgp5fSxu1)z}z>NSh%d3A{d`R-e)gzO;3286>! z2g@B>UOaTB1molQ#J!r(F!1?kp3-G5`FD{ScTO8C9D_G4slk*6lWP5eij*KG%;3K7> z;K+St#R?I!xBUXN`ToK>NA7@z`rkA5DqN=@Wh{PbVV%1H!WqF-GMX`&1zvBlkZ05C(3J~RTC|QZU)~P@&Pu}p) zMX z{w*a4gH94>n}^l}iETpE4^pVo(vzDXynaTX+0N>JSd)&PQ9xkY5xo`t>>6{eGOSsZ zwlV)zR%IN0s8rk*esJKOYECht{O}r^-sB=N0}g@#%VfYWLd_V#QE<4x&FLYE4`BYk zZn<=Z+-CTd6TjxE2@i(Wd$og|zBUg|h(mk&ckr8*<8f_zjISWsIk2jLkwH2OBccA8 z9nmG*=@-jh;|#-u6CY!cVX?Cg&OINd+xBwb%GiEL;!@Ep!jjoMD#Cz;-!gsoFX@lM z*S_JgQ$I%{+`25Vz($#ND#4ki+K!tB#Q~WQdI>{Aa8lM!TVXpnAH~(M)qo@Baw@*w zhq3+zKd&xwXfekxtrh;TQitNf9_vZv;UbT^_&ye&8q}1KKj**&<{LgwPiiD+?j9Yx zO~Bfz(V;z#|JKLc@}|W(=v;MZz1|0L94xe^T%-L|VbXJ+_M0>J)6!gqzv+?zA1O5#i!-> zBbCWayQ_SoIwB(anHz}=)K-55QUygOVMb`XbpJfG7*!BbQv)TOiNgx!881W z0k908S@@L;+=>rn6Tpu*x;YfhmlN=62$1ORgU%H95VD%DMUK39h)nGNTECJf(92KH zh5=C0XFe8bu_)8^n<PArqRQM8fIF=a0=NPRs4uVP8c!*8)_k<^TAd)%XMVNiX?x!C*i#RZJ84>w*U8DaOLf-MIVYbj{c5mme?s=8}kH z5+=8glQqK0H{@fP%9WPACWN1#2tBhspV`c;Oe!@ij9V&7F+b`dyMVvZ>Ad`heA-Yw zfrWeGOyyhqc02cZd+e&x7zyHG02YbDj6{w^xYgApN_mr;v&NwgJoEk|IHgLuOit{F zjl#o5f=On}J$bLxJv$keD`UMc7*6>n2*-<5%L;f8m=nKhG&Uu%*6-&VeyS1TFg=v< zB45~_kBp!480xCWuML_tHcew6oGT6@Ws5d+%6Zf8%|OnXYW%h>ZSoX4;*)FSEX~T% z(1G@=-$r3C5n1mWc@SL%Mf3KytdWy0>Iva!2f<0phWQwwC^dWU%Ouf&x05vGiPxd! z-dC(2j6A7Kvuo;Sgg+G%H?_E;a$UKz>hWp&bi@rtewU-O>@TYzNc^3^I3X($P^2&+og7w)2Nwu8zH&t_4Z?7-HR#XIgOK@HjS-NrlJ}I zdkqZ&z__EnWB}*n9^VmQ_uy}_|7@O{Jtqvnm)n#ReJC{pxwzKEIjSAvNC-4fy0{@{ z3BltZ^U`Vd5^U7ZROP*0*!LwNJf!GtAC(^S=U;ckH}FikyeLOwimsCr?-WeB#-9Bx zL!`s}(lXLVU_R7nLZ0KmXhURtgZ>L|KS2UqOLe*SyIL(?hxfr#o^Se59n+M<1M~cMbUx?ya4c=Sd}Jq|#AH#Tk_G`1kF&xLlKNAh9Xc%7ro$s9a-E+M1Y0%ce%UbX>eq^Vy`BsP`LhBAYj5KP8R}?%K?~>a zre1RVlwx*&WqK6)^sG%$+=j`KR0pT?W8$lh*zc@hb8}4rCvq|E6W*hXk@_E9U68!* zhf`|XK*4=c`2gwb_mDk6`hi zJ8XvtXjVHK8VQN)i>t||Xh@uWBYZVIdrm<3I9dZHY}F$aBrIqY>42!g7#5{v&TBg6 zLI?Twawvs+R3yb*h>oGgU|a9|tNU4PP^afUyT_Uf;(nRtI7{kBJ?SD~b&a}y{BDEB zT&(|N4OX`TBeA#+Y2t`OilQbqIb5Dqdyz*QseC{^tlLO`$`=NI>p-$S_)X`ff92)T zXceW6cmaWPjR4WtyD}8$EpwTk;XOtg<@%FyQDiG6%Z{FuBd_E=YCKc=_FsASzIPM# zEbtI|8x(jvYD0oJ+3_##uQCsr$truJnF_+Yhy5()_5E2#F$of`yX%Kwo9&CR0zp@p1NPv)|*2-2|XTI&JR}JaEU$)YYwGT%xos2o8ah8NC0oaKOAYX zB9l8dn;T5)uyoYwznqQ`B$!|EfI7$FJNjb8#Zd(}8qJi5O0K1@M&H>yb^hb6hBr1D zimuFQ9x^|L%O^q1UsJFliPBIq-EA@maOM6WZu=c%v2oYYBF6(`6Vx*vp3=_W?8C&V z-DOV`=3X;OhEKapmpZjS;@tg?0v-At!@_;8WyvGMD!^g(C3yweuKvu0ri30xp^sJ{ zf(ALFVh6VMUl!-qd|G^pZWQO?6cZpao<;zXd}|9gFw=itcP^%GS%i}7VZ|jDYUx!+ z5mzBWQi`8NbvOlaa5Hp=78K10i1TGXuq6j{7znukw5JhRzEzXNfU5+KIp2t;)?1Uinq`0lQ_+d>DLGgQXiJ|4a_lUQZ>n~DKCoRIt z?QYg4j?KJ&d!Yw(UZp3~f3zJYfm%Mrp7R!yOnKQZJU|-G+EE+NEvR?5$iIVf^(O7x z)#5jGWZBVOjL2M2owlU4Ecqn7W>@-(RvMzRe9PhUD1w(nwhf(9#n08jM;}6|;6?=P zaD}jZo_f-7PENXko1b9xH(Hok+=0dVVa>Arn`)Bms~M$RXSR$i$w)b*2c%>^dB}c8wBw+}Ux~j9}TY7R%GrqDG@-jX&+I9Y~vr<^vh~-4{ zM1z|&6ty4D)a8S^C3L^Od@aAfN{hO9ihBFA?^RQ08Mb~neVdP(wZyx9+0f~C!L+om z{2{s7z^|{w47$;cAYDel8h9kLhML?>$goVcCM&BT@`JzltUkG4K2iY$=oI$;{~jm? zu*7yJw>{p#o-0+JGO}!aW*YE9sh(phVB&J&XI*Cf@U{d3GtsI~FA0M_gdKs|R6S?U zYVkRyD;n{f@Ew!5c_uBEHhymNE_q>=*9Dr(qosm4-jM4g4=BQ?^!oQ!Q*@V_^APK_ zRqyvCYQTjiY3`XZHfE6n@JZLsa7N9`TiC3uI;Zju^}wx`PGhJuf4|EL4|%KZF8FT* z&p>mr6qEetTJaVQ%wA7b;^`7QER#&10ye6Am;|D|Wj<_u^4$TJMEv@X*K&nTdc@JM zIh4MmjbwLVlrKa@I+&Mnd>J4rIHgHC@$yeulZ6S{-Dt9#v5Pex0)3@F1!+==gmmBvEdAfyCets@R^H z3|{N#Oa0vI%{#3)wr zW&6}Lu%IFhUh&cb=5l2K{`gSu@pDwCN4b1h{q=HJk8rn0)-r9#_NIQQJg$9p0tvd~ zlAz$$(6McT%VC$r{?gnj<_$@!?NhZ#=_wb+Sfp|-(U>^AmEQ}B*I#K#Cbx|_g5z#S zs`0{nHFf15-k7n+Ub`{R{x^1%GCLNGm3X70;1_C@Z{T(_6{w+v%$>km)39>Jp@%BL zVE&h5P;fA7ck(bvfbUfEL+&JXjRttRF$u3ZmDjMmId`@X^G(pHRt8 zp&WlY#B)bjCfee~mU3Z3x;G3T3o2bD#P1msSYkuvlZ63QMo7ef%BCMD6G5@bg~D(s zB@8+qUrJ{ta~88-OS)@ zZ)R20Sw0d86NYAo^53{P{#fT9{3Y^~8;Fb}GB&Wie~;(GpS&Etw_>VozybeMdFNN( zS|iP6>i`Ms80^DR!+fEx)(=?N=9aj9QdF;uExctA;Zn% z&GkO_-heQS1{9ya8$%(89_GuO4$4H(xZqMkIKhW(md1coU-=~Ut0_C;8tj}kGa2M0 z9O$hoR{pOd!;qZHyVckiuM(R{v^<}3CA{3NX(mI@=WHFm95Zkae3Qfawilxu0D8sQ zWEU0N1eQZ5nD^v%So+2nWY3A*OwHFvT`l~Alz|7=hfPbdyPeI&Hd^2;_ensjyoR&EL-u0~ zz*3W{K=MFJ)u>NgA)Yi^#wP^HUb^)6$@XORSWD>*a#yFz+PlN_mkG`MH}~;o$cu_> z{A+9dBywJ@vZG#CJNX}eJLPVzY8Pvi8dPgLuC`;07t^Fe^iEg(4bbZl4ne5k*VX6w zMr&rAv-xMj|dNnD!@oAD$1Ym8(J=snp)Xa$%>f@ zub3`3z&{CWDYVYdo98}0nv@fGDLC`(JgfrEa2d-JBR=&YtfO#BmULdv826y4Oo)UC zxx9jtjwsL-h|JPMtqThaA7Nvkf2GOcf$1`pe2!?=393iyy{rxY@RjOGLaSZ4!SaOC zUI+s0PMNs>WqepX6CP73EBuN&Z5bDGDc=H}a(CysnrZhrh_dDECIN{uxp;|20k!^MQ*x-Bs(2sr_ zw-rZSRQgqwcRH()cjtn!?JoilgR4&M{$93Gs($rp>lIE*a!{4qd3^A(NfoNB?8PE^)*9 z5&mN_DrQ8zKUaZNDT{xo^g0WJnp1Ye+6C*qjOna#LZ@tKV3@Ev*c-XALc3<2<$kdy zk1Jxn5k*3;2q~Q^Y`EQA4Hmok;QO`!tPz--Gx@R?5bY~hn#p4lb3CG>qe}$Vm79ZU zp+S$l>>jR9b5FG|;Lo?8!{Zsuo=R`}7&0!XqYjydGi&nXctHn=Ap`cLnoP>J<3z6`_TPT~1~fm`8SdYrdG4QY81o zCPP#DA;q|7MZ|M*&Gk(M)B)*GP<~8=B-j76Yfjnf7FqHLJB_*V9C`dcup|CY8^6z; zXXM;rVKgk`HN;#9HKz)6uQk$?j^|YsA9eKDjgrq&-TBw=_KcWUaVTKH6+(&D)&{@l>RDZDM@{0?JMXS! z7pPj`IX-4I#(veQkqK_qh~?ZsLmH$ARc9==B-urS{f@AicRaTZQ1HB5WqyWBK!XBX zpW+81&B!NywMsVz34I%mj>9=D@VBb!jBts%WBBUMDec+n(P4kGi*ht19}w zMx~`yx&@_M36+#ox&-M4>4rl|H%fzaOG`*|XzA{fLw6mz;V%4qzR!K%``-Hp+@E;h z;heqKUVF_o*BoPxfyJ4B#{IN;*=JLH^h?%0mIRWGfHWQ5EN{1Sy&>Gu4%bg5I_U6x ziTl+U=`~yjQb)8d5HiO0c1626A6H?jdI5f`Xx~CWZ_{~hwwI$j|1Xug*C9#<#=w;~ z^oJ3@LyWq*^K0xrqN`DBW2sD=`SjuB&C#{)ouvd`tnaS9*$Ec?`2yAH#VFkIb_oB> zt*IU`2jpC~ViSCLGjg#)BAPbDI(OeqO9Ef-%`tDra_U)@$q@zd}MEq(}%BH%K zKj}`68GZ7M2=hWZwd~3fRNZjt+Vl*^ry4aZI_(SnZ@m7)8{+I=_MRTe9`mW4mTHTG&^cz+8b0x=kl=k z=0v)z@b4e4+0FTIq)mRzq_*Bykdm-IOKs(Q3-V+AIh)NdF=L^qFJ6)iB>PNxwCtoi z()?BO)~BltUZcuB#a7VWM6+ajx607mKzW-Hi_D&{ z={EcE%{~47C9aP7$tJU^^xKn!SQH^4Vpd0Vv8|XIvBsS!C z=wQ~6w!nmXUfF3ctu75U|HsFWf*oKG<|^k%1zALpk43e&`&_1nkd=LUC=Ln%)fwjh zR6J{pIDhlCZ`LM0-#jH8=`(MA1e@B`rJkYjs+DEj565@mHV!L#4^qKna9}lrU+I1> zdX^SoC%Z7IhZYYDh{l7JhPo~GWohPo?|%%%RJIXr4CZo_`nyzqET;bn>YhcfW9}$8 z{&zgvbEKq~>I;E`LitY<1lV=NH{rq;A1m&QQ1PCc*fFL>z_7uAm9dx%p2jLAS&Gnk zby}iRkNR=xQveVPrSHNEa+&(2ou&+XAU0UdRx0LwApwPgxQ|7skRm?0#rWOa(SR!L zr)taXFBjlOy~QJ?&SrTH%D;nNbWmTP#qriF(nIg=8ZNE*0tv`=iVh}dezaJ)tW*D` z7WGp6%oS>N<)O%Cu@?ajjmI1Hha2)sl`K+i(YK0@tULs#(SbHks|n_5hSHHyi;4y2 z(RZYBIwl^pxfRjjcWYn1onuf&uiBz2Iq-H9ZR{xMnQYBa2GM=%(rCPJ@=01Hj;SIC;_b~ z5($J-ubX+j%Y*1QSkQI8rQ2U+ymu_|+HL(${H7MX&eQ6PhIzKw#Y@>~64kr&!oO`x{EM&;o{3rOr-{T&fe1$-93|UomsWP90zr@|CnMST9>mFK!j0=h!V;UU5 z-WPk``&_1#(ec2v-|A~AvW3vRw|Nx6x+nHRB2i#>>Qv9$RVidcovB-037f@SS`QRc zBP|5H7)Qdz!^X6;y%TPnd%S9lNOZ>0Tp#0xRt}9zwbClij82!PehH2BeM7BTi3&5& z#1CyV@b8?g7~T3?$Y3A%QF}62HfVl(*#5D2;-tx%oLDBG5~-KoiDtgFKxTn})VtTS zUI~`Uh)@+F{AhUv^Ce5um*$22#p}(^AZLg!cj>9#)=vcT_l~rh{lmbD3h4CSPW{N1 zjNlpnu0SEfyC^##=mk}36J`+R z4(5!54VqI#rPVJQF(Ts+hHp!pR|C`tNHzPU%<2vq?7OY`KN${DxBcAPI|@@?ogQAB z5iDup<)6s^urT)fXx8HPyvj_w>`aEJV9pucYdLK;-9jK--pjP6J4#;+)s4-8e>C+| zPT|Tk9m&SB6&hLWqSx0ScyAKtiGOQA^R|BEeT{7AFrO{gGrd*547sY>50iMZ2s^uMO8)a#mAk;84^1lFfQh?8%LF zdrSvct&>BwieeP63yoAs3Br3CqICLLjq_c~T*P3aJ76(tniEho7sJev z7TvX{H}vHzi-e>m3l--Tq&1;wc4nilvQv}&JzrGoo+)zVZL#qVvS^ARJyRaF*+?Vx z9XBXv=XPs5M) z2c0*}oUBEqTE*J zEU|W!n+>_%`C8Py3&seqTza#ZPdhV5zix^Za_lst#6^O{^cr4>r_Q@5kmgRTeWg=6 z_%5KN`O*V#`wtfgxcQpu6I4TA(bVv*Vha1i$pVGi*2qdoaZXEr#iqewKguy(QfGXH z40l%Y{H4oSRd)}o(;R9Q7Vh#I7BVSK>VIKPg97KygagHDIvBW zI#jg=k2AnD$E=oxXH|m1MO?ASuUT3&?uVsVAVI<2WL_hnZaF)m-9n^;%BnKb_2Tws z5)5GFKBI6a8u_IyiPuiNl8o?QgF86Ag`2F6S(906j&R3@Na2WG;y_%Df#^1;Mwe9+ z$HEHC0mBG=FKbzrcQfcKNer0pK}C38XZ-Py3D#NSwy(KOM*Uv#{x=OuPKErA8aaAGcUONV~ijA_;=taw#Oq$)uc^Io12{$1z}>)*22WT&}MkkL|zEW%@1-o%O2bFxqN~8F84s~#viquh!c*=q{p}?f&xKz1jVv=`lP>M{F=5j zk7KKlHPZJ-Kf588lFXBAOOm%WP7Im4W!dMHAqc*`^@b0cE)v8`P3JDfwB^~(YO8J6 zdR@qjSD_9Oot`4K+d>t-8r>?)2YjKZk@Q$bm{h@lGIq#voTltvdwiV!${)w^qGjaN z;%v0(t~T%Nyq4kWhNzJsZ?=7_dU;So$o=jXM8?UhE_R-5#lIa`Py>7P2@Hb8 z#_JP8M}Y?EB)q!U{l$isu}_}9C!@wJ)oea4C_Hmivsv5=c>BdF>h@brLurTkg&+>_ zyNP%DB|YuGvusS^HPA##_PWCcthCV5z)kehL>ewoPfbuM$p@ZA4T2^VbtsJ%H=&l2 z_^Lmv+lyp{BvQMNiEMt8j|AiPsl{fp5VtgNn_71U<5GlRRB{?I*scN1${uJaS+?}64*!ZMwEZT3w$Nnyr#tbyn zLUi|75idGQbTO=-+S$lxg*n@4<`fF0?1WQQ{5ik^ht$<}=_V*lL=d{#XJORC82+aY z@$H?B3mOVH3dt?aa(*PF?y6bSV{z#+NqXleaNW{DC#oXdN+C7GsBms1<4QFDM zi57BdL~18|$cn5bvp0`JbQ$DIM;~L4vk|vQ=QTL??y#ERimTdFfegm|(6%waU)y)!u=g@Cwc}UQ)b0K+Z@Ua~h~Z+wm3s=bt{C!GDoU%!hYY-M{Ai@=7;x zBsDXM7WW{&_Cg#lZLyxPAw%$Mkq*$`s~~U@`3jZNI}W_o7D&*}KX5N%7ruS`7Pdv7 zhqm+~6Vl1c>J1P{3Q&+d=3$3oq^KHdf5Av~&e`}QofHs6@Z#-yN@QSGoS65N&`XlK zSCP`9Wuaa-+SxZQNC-OS$6xAgZkBNiQF*`Gx$c~KN?>|;Rlk)ZqFWZ$!49{qCDo3J z>#F7<1t@Y+fC$4YRM?So_Qiq|(9lS182(jLo+sS=Yc|v*gq0Z5G1dGxDf1CjZI!&W zY=tbhj{IA(ZwR(Evx~KaS}no#VTMy4*Di_J3TFb(%;Qr;o!9lRBfYb?W!@Wwz?BYC zAV9z1khl+QXAQc@kn=hX{ZCQknD3?m-r+UHa6jLR2n~~SM7)JyUY?Ccj2du(qmF6= z=eB&f)P+pJ%=@Atdgyk}6gK2MW!|UAt*7Sszjbsz;k7)Pqxzq96zaTTXcB01Q4mx( zNN8SE9Ss&j^ZkC|Dsx$3VY$1!(Jwq!q09jB?~WV`6VG(t8V68iruEvV^n|-$c>++Z9Fv^PFl!>G z**hH8v+#4PO3%W8&N# z^ru3hfkg~0JC5p6Nvzi|G+3?2!xKc08K12o#))D>UWdlOmzzcef4d$lEg<7-Y}#iE zf{B~pKJrh9mQkocx1n|kl(&Gsv@S+}fXy|L!Af@TOs~C}RNXFCo_3p4;~TE;CHS`q zm0tbnCsG_@)U9-5U1HqDw$RXdJ>f+puyop7W+JiJ*lLg5&f+DNL@t7uW^a}dqJX=2 z>SB5^;fcp1jI&zm=7Y2=Y~_ziTAc-C64%7yOK~B4$Zxfsyq{fj;UVbQn?A2WwW*tF zddzCs+Cx~)Uh~w1GHRZgEmSbLi;OtokoCzTcECv+EpNy7T~r9$n&6fit6{|Agb5WR z%vu6eq#Xkl9890v0jS!BGaa=a;XrrGE5j**@ZU(TleBA#x8wdZl6tS|s*Vw)GHR*& zNZqU!K6>M{A$(L`&wMB&$=$grOLJDqS`OE*_f!)2 zxYsVpdJR#NwOC|jo%z$Zk3xD-+){rm&scoYM*0oh=r7NFB%5>dg$(y2-eo*h^#>e5 z_=QhRS3!a&mZqxVGXvJk<<6uGlaGrOpbA6EV;KxYGokl)*AMEH$3sG;-MyE`8-_qk z5pr|bCEzXHk{liF3rvV!u(8Q0>T0M8I;>-LMo>kp4S|Xqwvk0>_WDyYq5u}6m|UUj zqv>gCwxbnvy4KMd?}wmJTwWiTynS{!*h5cnV%ua6#(lIztE*#EK$wiuFp&8<29x_S z_hPEM<8$ZL?jY9lah>nr4D;ouq$>p{JU%b-#w8ofUxNn2)j_m*E&}`QgJ|Fn0e2pg z{wG7j2}wzz01m+iBWzggfdl8XClnOlN;GQ>=BllJymk1Qw-2P8R!GLotClAE^t9G&sFs{a&Wfu);Iat)JIvD zRh_^Il3vl_PcIi``@Ts=iQXNlaG#OWSlW9m3OlmR(2YOr7&GuIhmn_^wUy-{;_(eK zES^R*&oSLR`KiK5Hyc??x;6zJMn5Q4|E*A>!TlEq^RBrZ-E%kH97*2*wMocQ01?}C zpm&1zaY0_1$XxZtF_TO(&w#@f9|W!!IfszSv|!goK?z~Sg}9$=BG`A;-k!|~(2oIR z`9%19Eg@k)`mBq}OK+_=ZXFFakoUE-W4;o-?q$92eepsB4tJ^kA_0NSdx85fi&(2~ zT4X0IK8U3=(Q=i-@8~qv#-SR6@Ex~QG##%)3sXBg~KQcv-MtVD?})+cfDhQ0VS)EEV)7GBqNl@0&QQD$$Wr<`Yz*pe4riv(Aved+$@=!KiGY&WgDRFU zDCcUVyYIg(m=pB8(pzc^2>$l%^kyFn5BU-yX3pm^Tq*tVa3f~ziA*}bt5QYl!dWB& zEM4v{xRaOr*@RAv8yXL}SeM4sE4X>qPaFF4Ro0Ggm-hB(FK!^>K2t(0Gki|gf6~iO zofN3c*g&w~F=XHW4P}y@WLfH#3Tq|{zGssKFn|X;c!Mkm7~uBgI>w~TC40C~B*W&; zmd`6U^>MTAnOC`~@OR`m!)C1S>FY>?34I4r`CJSD6+uw;?!5V4e<)1=$cx6JLAGAT zYdy`6EJCPbABMmxKtE^%Gs-vcbzKou=PA$KwMjSqACNpsg}kEy-UWyUP#2YErbdD; zq+d{C+gLs?Y@|EIvEmPxtK#GQ&zMeAB@ac`!$#Tv9V<>)vOuhbEbrtHe%87*7m!sR zcgY8;4ShtlIJzGk{_Zys7IA(aNjc5``_6>SO*P6h6X|rJ0FfSo-owkvLo`@c7EMS2g8^bHoK2%Le;iMz9$7N49|;u;j@1m5NM+Im z=g}ZSH*nF2Ym~T-Fd}yk*T%g5JDwmc_*a)3zVRKUQvLz%+v^dV?^zD1gILg{LME3p zjrHFjoO?M1O*^sMsg`=%-ZOH_;sewflPV^qgCb&#-jB`#UUVTL(KT*6gX@pOC@d{ulE?3ERiblkRR(ch49o3ElH zoLz3D`^lL!(nD!|60Yc|U_X8kM;w$)1)W#VS&MEArj~!bbpsNk;_tY>?v&K<=XKM{ zLx4%|H)_$q=giEQ^8APXrYVuAI9|I_W$O`nEeZr9^Oxw4q9>)t3qnm!7FY*T z_4f;?Kd|DkWTz3fkf}X4Jetx>EAj>3POVn0JlcnOz?pds{dy*w(?^PUFf@)E{}azfkL*M zhtHlfU!hv*cYsD@Y1UX%CZKu&U*14Kg_*;vqNbriT>U9*je|cLp2Y;c+AezIc~yxP z3XCW>Lk@RPbn1(FY!`(=nCx6(8YxmMRm$dq&_8`e4<-9-FQYsYz@sD5e`F(MY-z6hdi z7@LqBv#UbXxxZ)#2yP?Wcj2z$jvTznevKS0SG!sZVt3IKb9yLv9sYBKO*uM?F1v*= zz2}FL8|O~lA7w06m&$)ss=ji7 zQ*=xC%rbG*-uf}eJHHw~u%)jyOMivJo|&=vy zsj6AP$4_A8x-*aaB*^(~IRXkM@1nND7m7mXLj6tXXtTU{L?G{L_;$WqS6lj_?VyJl zvH*K2BS;=Ce%R}gWNC>1(meK=_hmje*aN2)48qTT`8aHMqktBze3Q72CXtr<$e}ks<063*_RKm z%!dGtV~ZFPx3#9L3C7}S%NqTw=+{HJYv|6Fw2{=w6qLJ?qqj%)J)mFDNW|*aV#D1! zRzCq}$ek3xKXZMjNj_os*jG#J>2tWP`+pM3ZPU1Sm47uG98` zv^8ml_=DtXr|>=&ZQs8WuztI6eatK%`u5S=xAnC!?-Y#ZE`2NRI;;_u8|8ZUl`d&^ zjeUQa*;q!lgsnKL3cR?JEaUQ!xB=DcS#Tsc^3JMkI4%C|Xg#Hb zvd41#>s{oPQwPIkjmoeXCuMi_0Y0><7P9?raevXX7}ko8jA2S5tPp;~wC*F%(vsBY zLAWXwv5(<*OSO~>Z>&HD2pKrO3Vuc`mvGTL%Yr{_^XmW+`7ZspGW|-C9;iQJ}i3&VSHmj>ek6 zf+j3mjDu!cw_I-t>C#kqMrR%o-q;h~vh8mnL4k7FD~5ft_cmqHAd?)8x`FhhPidaK zSp&6^9U>FG8|t@ah%=^v$}sbIeyGLF^Q|~cKGeEOhnitTh`T*=D~dQ+2*veVG5v@v7X{YMeT~KKbA0M2 zJvXTYUo+U$S&Y@|?Ip5}PR|#4`tA308c!%;Kr>?<+k|rA6CqxPT6hb2=2C?74F4^h zcK0}F1W>ibGX0MGVIErV(N<(l0_vu@UZoNj6ZUW$CzH@Bw%O08hd(ADNu8LdBidMYTPvRU#Z{9TdTl1H+BEc_SfsL-O=pl412$gJi%M39gCAJ zeRmX1q=O=7QA--5QY8=*6Kt??d2^yt*kRIY?U27cHuw1tCr0=v?~{Sz$XJSp{@>pwfp|V3(bEQNd9f zSC0%JT=o+E2xazbmbIiL!#Fmp;T-^FXd(hgvwfa<(cG|DKH13v2bH_IQD!k04+b1P zAxbb3Z6=@$_|+{9$l$<6myf=tjw6N@=~|ssNUvPx5!1P#+FJ}~#57m8jl6omi^={OPpdr(KzkOT;l# zPVFyYw7GkQb~l*;6_pxn+C|Tezj`;H{wgIo+;6hm8piH+W@}(!^ZoG5AyZAWra#T6 zyZcpx2XrI~&{q-<1*^Hc?hZfJ12_Uq_vZ` z+Bbgk>06wJDCp9v_Ucl6YZFY@Nu zsW49R840CiXv4QQwG5t#+p)(Mp7lj2@J@o1qeM$*BU`)_g`eELwd<@QBX5JNiOegW z)6hd3Qub`S#qVH*kE|WBH2uWF$cNPNM3MP=806Z*t|g?ail&DQJYoubOD5Em?c1)E zCdZx&>DX{Oe0UW)D6B{d6_*8=`=f(0fJ1Ep9O~XY?(G+fuL`%mWYd6R{;nJpH|yqv zL=V?G0s2w1wzM?qa`or{lO5^}-p*F*8o&@HC4Ob}7?}PJil>A=hF0F*tQ;wwRdIe) z7QQcJGzYR|X|@-bN{U?Sb+Z)ilGc00mYakLD4Ww)GWB zorC8)4@pMN!7rC+b2&(fHN64G&<8h^*L_J-!Mna+jEH(mYiff%{)n%m)TesPhCDh@ zoT8mxvW%cSi?HqeL?!gjji$$ql)`f7snrPEPV%O|#BSoM^67x|J@c%JlK^cC8PikJ zhoWvKMFlQPNaaZ=?-RqA7x~CEDN*#$AtQcY3UT|JeFYTQU#-iEVzuKR#D=&;Na_}^ zD@TA=^UWzEh9+9t)$1pAG}T0UaN}EG3RQtSjAaLfTq%^9Y+`sjyj*bFt_TAfI{_DOezT zjpJj=UA%Td)@Yw6ExPf!$UrfLodelCVbobo;>Mq6N$BH1=o6ogx1tKGlV^>qy@6=4 zNpuqtVuI$MSG&#v_8C${=Dn}SvNGGvkN{HmV*veXBumS)@&+!OxNijDOfsalp=-x_ zy$&`>O-rZ0-p=}DBmBEAtTIpc4gXl{-XHf2=)6}6fjhTRpeP*fvK!?aXgBMX%+WOJ|H)Wm-qzKbsws1-6S8d8uS zZ=f)3L%d&~IkbOkot5;~QA#sV&P>{~{>RuCCOPr^zDa^$*^lvD;T^|sWbbxw;*m`y zE!xEMypTajEV%{?=G0$5PgB{LLn-u?(s_z7&p52IxMIYKaFPy_esQG%mNtCZjLwvvAO$sScT}-H`M1*}XWutt{ zMT*{WWVp%V?$mF6fr?@2gXEea@~w(L=w)|e8DVXZ0sT0wvH}ux{s<=8zTBL%W%+$K zh~laJ;+^nDL1n69UV~8r>7r~|&WooN$ue|>&-<(_RX=)JXwJ^37xBS`iCbJ1AW7sx8ufyxnsF*Wbg>%U4SM$;#^EOLaAb z1DPzxyDIRfmMjV;4mQ1M_t6N>mNm7p;exi-Ty66e%^Mr#hEdk9&z^dwtdZ{rtLt@d z{nA*JZ6g`#$*oawUOe4~yW5$*oRe!?s$L0iz}aPJ`=q~6I6LLTqmwp^w2)VmkmOQ& z#=6-ROykyeEit)rF-LuUfcq^utgqdLSU)R^^JboeR6Nf>;`nG@OAM9s8RYhNNq_+h z=yZ$Hc3OG|_7c8kHW6p#nLL>XQuT^b3i0GVC8`c*onry_-8iaNQaaPAEF1RFWF3Jk z0`l6_Ll@zw7MWnlF_zNussdkq@bc7__yt*nIxO;Qa>SQ#hvowFO<|v!!eipA_3lH) zFc!tnPlROSSbezm$?H&w=3Jy?9kkFd_-!KBn;KvU<0@KLUCO$0Y9*PJMf_Axj>|bQ?!5d@h3N}t2HsiJhHY^*VNFTNNG=+)! zq!&asRN6~pU8W%=hptK%9k=G#P@_k6JmU;+Ue1WHVXw{#v*Ad@e~hPppO6j}FVPgu zXql_rB+^R1&ot_yzBc|$bxZXk_fhITjNm$L=tnY!+v35q!;e)wAF$z*)#N@D_TB8D z!)QxcVRc7@kVGdZ#B!~UE0)~Iq?K7vSBdhw2ReHE@1*I>oS1(chLMI`IwEnZwiWCR z#x0t~da$|PF$Qdj%xivZDwsv$5pEB3tACA*1i8-rE@~ZuS%z8I=(EkUa&DR-{ilU2 z-+p6m3l;jB$1A*_4nJn3HoA7`TNmHot`>`w)!gsn=ey2-6YJ(TY<#rz#*iQugp_Tb zL0!~sv_fq{MTya>{&`3JEYoZqiMNaT5(l|MPsG->WWR{^ zj^GI67uBH{kL9vmIwPJ%?6}yr|BOXc0MJcJ>uVl^3~eA?P(;G8=G_i{^)LGt-=`D@ z|4!eN6O1x5MO{<*O)Wps;G zuV;hK!~TB1c-|0X)b>r$%Rr^g^!-e_4_0prS+Kc187M7mpJUqo^x^Rt63_d*SB9O< zC(zQu%=BaM^oG4`q@${9XP(Z(M^+wyTPlfQFn8A2=2;Kp!KRoSWbBT9MPK&;zI z?9#LO>{?EXs;<+Nh;7L8(H7h7Z2_2-dt#``hj;pPi@8R4vEFT(Nz=|*F14IZzwc~J zOR0!MS5WMGO|uOSLsQ^^Z2?s?lJ)v)W|txd|Bj?F#z|kziLs$~QKTZQ|6Z=WJTiFG z-8_HJZv4=sh;697`&{aBY5*~U@5b5qW`s^`WC#D&THEdNumapBWWk~Th4u?YFb~IY% zM)~iv1%mE8b_6GuX$H`2ZiuCG5X*RoOq&5GEU74Ae7p4Tq#YniOIE1)eFfHC;9Hbs z#eM%7iaVhhK56G(Ns$u^>qUBqZzcm}5(WNSqe(UYLI2kv^BRxMxZvxx*~3B;yaOlT zlvDL1l-d)}9%2AtEA?nkE2X$-fK`8laq=DEcT;P~4<9uZ4y0}HzI}^UR8R^%3Wc>u zujs~~vbv?FY#D||9lGAeD6n)OT@0}1HM7XSI9LEw1PnK$4M=_a!{(y)vuB<90+`9iD z+}PFL?elAs&(~{~$}+PH^0QGR)gmkn%T958Ckq4LP<1L=gp}I*R}(XSKrs74E!K*<@ z-1-&?qL~x6yN?Xcb?jXp-SkFTD`<$&2or(zv0LAZ0)`3(A#K8{5zW#{4kNeRCry!7 z0G|RJZMTgtgp1tLUn*otD9V<{Sw{)KB*5wS3s%TpDQ>|C3Un#qO7HZgn0HxC`pbC! zAr@>w(YqQ>d=fkww68qHoqQ1<-nUL#HnE`Y`OsY))dz}HFCY<>T3$Sov>?d;EvLWZ zM*rgQMmFMsh9Y~gjUD!iW9#eC``6`<8w<9qW6vr9df#P=#D!VXy_E|ZKnMkXWxWfL~W$i$kMX0&K_ z*+0>@{h*y@J0;0UgBT|==IoYBr0UkDIU^bqhXx%=rHF7;BQV>O>>3hNZaB=GW2?Lb z<#%HEhO(en+TRny%22-It*^O*U|5(A^?LepYG!Pi_yw(05YSB%N-5x$VJd%%Ys#g2 z^V~5XggK3SL7b^b!&Fkv8q|W33!55hET}|qiEa3MlICppNu6}nwK^VRpysL~a%jfy zW?L!mp;P}y;tq6$6q%A3yP{XwsgN2pHV{o_CuC8_A=>;)pck3V!khOf;Mym*p`BPc zuR7*(Ya3|8p6YksSYhKs21xx9)P8Xf$ReQ3*R5og2v}|BpQsbiD4g zkyb_dvg$3#2jAObNMby%t~0hDi{I{O&j_7ap9Zt^TX2ge=mVoRz;XLiS===0A+ois z@o`ZA_yL*p|3FCS3*cQ)NhnZG=-}4R11VFO#X?8xc3q%c-N+Vk_`w}9QfX#k7`Cd0 zCG1FxEF4)UN!$;rU3(C0Q!Mv_t-Px0CLH1ObM%i745gwRFnwutV+wQB^a|7X+>aTT z_TsP#YT2|^vN?=aM;BQo0;tCjA&d>A#_Gp}Xl=HC=RcI=xN&n}!monp8fbRW{_0IF z#AR@4--^aOg+II4R__HMgFl{A`*%YR-?OH2^YuKJ-TCNh6eI}l8*_cgtZh&DXKBIs z36Axx_#~&yYFeN3+w%oUfQ6Qs43LHsb0PvnPbKj+MChq9YI;=W}sR3wtNzcZW`uZpHavv0Fl2fJ0>R+N=&fwUjs7SvDP zZc-h}J>rw_#Jm51E#Xhcj0sWOaO&E=*&qE=FJay04SXp`7-Z*14Gsn^xbY@lyqaK_ zU=#qEP)|5zp3Yf0fV5ktb~`Yka(Q^T0w+%dFBXwJuJ>x*IPVgp;!;{VANyISe{H#* zU?IzqkhUe_qfrAn5cKPx6{RYn$I#Sp08>JGA9`WleI&H!F7IZ=2HGU;jHF zn}?{k$+4bH!N6PiA9DZJg=R1-Das^)FP_Akw=dPd4rS$~=8MP(eZ^MvTdwm>f$6Au znToZvS>|E3!y$Vo73EBpMZn$R;j(69!(GTUc_TZgG z21mY_IUMl-P&p0(^~3OFbELbk59#t~Fqs!uwTL`kVeFgY`*&lw5Ve6nK4O<6xli4= z2gAGkVeO#b^>H~8x!<#NiQ3SmKooJ+7iWJc=}~6Tdq!HNoYlpD1*+;DrD>jdaU3@U=An zj!ndTJa6QcPSR>rZ+Fn3eWn0S6#Obgl;p9JA|_M2VkfvXVeW!lM+Ia>P(a%wpfZ3K z;hhdZ>>&W6A_P-Fk4B5R@MBAZ$ECfIkOZH12A351AO)H%|uA0wW>Oc6rdK?8BXFC z##Y~*cQ{_4JW^?<{JlprFb8~LMUCxq8qpc^!s7YbG7P#CuV^2&-0vo4gMb_L4B(O) zoN%VGP#?8K9q@}A$dD}7P;`u0Yn?x$fG65vv+OM}uTVusq}JizAPH`!u>Pyx!+!y& z=l|tqKuNulsigXAOM~q@oM|jn9n()T#BabQZ<{#8alsY(K;HQO@wr!o5TV3huy?rv zwevr07Z^}=a_bW-0WNvb21aku0V<-*pfvh$kNSB_-N3c!Km+Rk_V@pL7XEuPr)~w? zK45k{{{MZGaYT@Gx9tKi?)u$|zE~&xwyFc5_26AnQ#)_%(o#}K&D?@fhFJXQKR>*w zF~TVY>Xnd6lVm`rNuZ@-OT$OtDP}$#oGH*x;quo9SLo)6ot<5#z*D5+g<888)xdz) zG|jcsdql)57%+OsL3gw0Z<7HLuUGGe^!8?}esEh5s+MTv9)BRnzGhVZnE^D!Yk{>h zbEm&!iny~g4=OgPKQP|ic_Y=al|&+Ps{z20DTRDASh2{fk8yyYbPBrr|36lB4_2m3 z>8Lrt9scJNU{S^NC?|u7`|^KIoG8N>hz5;12Zpo5r#g6 z1)2yh-EO3Nak!sZlJi5JL`6kyPL)!*o$r@)R3dG+_qQa+#P|hZ5-o#=c-&tim->$Q zt$ohMf?k{g0?hSzed&SJbW2wJ45P*U=E5$Vj28#Asv|erApibx>3_aE^E>UlWWnp6 zLSJA1%UpHIh8fze3rA?8&(xaz60ouU6H34wnUD~4aRK2!>VEMBP^dU^j>1VWu%2?+ zA)~G1>AcSzSABhLatqAf%Uq95@bU5W#`6`ipvEj0fO06%GMOcg3BnxY<~=Zq4+r{% zh4XX>Re&lGEm&FFoySQ-({_w-v{Tybc7mabjwRmr{sbVKU_2A5ZLS*UF zH>deuaql#bqmK_%mG=|oKsErfk?O)>*cqPDqdE!8y2Z!C^W(Odgs|13Ui1J;2UqCq&=)idwO(uL#GzKp)d^<4i{poGGzSuF;Z$(`|7stauEEw#Lq z6h>%ct4VN%jK<1)5(qcpiO4*P`|nY-Ho%+Nu~RS8D0xu67LGvNLeZ)iMq_=iZH%V# z&Ib@>=qQ09f{}^IatM7|Bqc)pc;AvO#G14jIJ8r8{0d(K5(f|5ECB^E(%~`0D;n|p zcw`+!fx@v`J40Z)D-fs1G?W4c>#*J*)npWPEyWdA{a<{mrWO#;CSBzYQoJ{S@ZNu7S zyf~pW@ahWV%p{k{E`m}ZN4Z<*?gHtc>6#7c0A;dRtyJfsA$x->1;aBVTBz_I{orq% z!~0=AqwXhu&e4~F>eZGcz?eKIhGx|7j8x$6#pBGbqmyxO(8`Fq#prwAQ+jEVn=Wp= z$9grK+bBWb0BBan9>i)Ui>x*_u4*AZ=g?soYrF% zEa%cF|F%cv9Xyj=7KR7wqIBXs-K z@#=#Jezf3cKq~F@)yZ$rvr)ZTm#3F@{OHqrwl^mbkuZ~+c|wp)w%}Ng zPeHL)Ae=|NI=d*aq+Mg3N>4rwr1tp}%9$M0>m3Uu$qpEKJ%xwS*>9UFWBxYm*Y`P$ zFuZ+Rrvyyk8^x(AhXl@392o=I2A@11qr3s8;tGv!PVJ`{)zW^OFoQ*bX6|11^o1Im z^o{Zx;I*yT;B3`?9+QZg(+G&HHtx@gAegy(xxsw7m+)xjXX0iV(q63$;Mwc-tM71< zK&n(v5O2YXQ2P1uN{q^1N4>PkJv9o zVoJ%|_g(ik%@73kv)L6K4aDddkSjsc%k0xKSNZ4%uX`wvXSx8SQ~v9+SMe2RsviX| z{A+d_KOObqBOP3(Do{op*4EZm+BK@m2fjkd^km?~fZL1jJMiRvVr8cvAfmEt2GnCdECXK87~0L;AHKW` z9>39Mi6PRuoEUlH5v7}>SgFNTz-zg#t}cyN%*|2$x!SYo%~2#D8DrMfyZ3o^__;oE zlA9;V8RsoNNR+yEzPzF5AE^jIsLbE!6EkK7ivShobr6dA@2ABlaPO`AKsVJxD`fLj zYN>|FVy4Q12Fe=3zrkw0lwy;=;mD7IfcqxU2UQ)? z%21QJVq|;A*&SRcYR^;q_TeD5)Zhfdc$QT!;tXIjdHYjtsnOxYe zHX-{gkfyTZYiO+w_=h&8`1R4}urNXHfzBsa{YncuBoH8EvORB^9JlZ|juo1iDK;Y$ zUNGP6NDDd5&SPUcirFOkVP?7I5%Aswy#TKeYkx8>DGQn2EDMIf)hIi|<8t zxWd85^B9Y^<1@vy1YaMpg0$X=%TN|%fkkZ~5iM0H8fdW?4o$>{U?=h5wu9t_y4ah< zhu442XiVM5n?Nt{@#l91)JUan*a3ig!}JnQ%>d;y0v=;ai$zw4o-$JvV*iuvgmjPx z1d0g2O$eexn9C81y+iQz7P&_Z${6D`5KJDQ_5r$@j%X$&u0hXjuv*P7<_z~aeOVs638{CWxcye$~Uk!)0{6KkJ=1nkELK$gK{MNL*J0K-sdz5%_y-1yr* zyhV{RTIekg;$tAbxQ-Ih)6p4#&WSXw0~H2w_FR6tCz&}op!-@PjF9!^e6{5aVlN@r zf76<@h0@REh=96(JQA;D1`?Kum{*CI%(m3vZU<_32h#+0K5icYCWHGZtlDaBG6o^~ zF1Z(^66JcWi1-8qt`&g-hkx+EhLzU5wy|N@8_Sr6UynyG7fUC3fHsyV-<2ldzGz=J zoGFUNe>QC>xHUGAC$?4*3?6~o|Mm!4kQxAuKpcd_GS6#gnItZB=>)b@kBf(`I3MhL z4~bxGEdJ2KKM|bZ#~x=hrqfW@*BBTW9OmN;=#X3S0nl*~NiE9%L}stH3_Q)u-)R3$ zPh4Ry9?Q|o{O|^WFx%w-mbMT<^12hL^iz@QDO8usViL;*=1LEQUHpK6P&UZaK1fR+ zBftPx`2{yOfxO`5OF)fE^SX0A*_|1SCFv3|&8@78B@t;%`(G!a03XG=VUNcHxNrb@ zy4Ht;7&z~K$hd05WX}N1-!xn(Acwfhxu?6XlMEGHUOZ#r@?pk6|^8YwBLFrZT zmWK>9zmI3v{SKPu{}JZdJ3)kiY-R@W2U5MUePjbYL^T;m3V=fSA5u_|v!vw-0%Gyj zpEqycl7N?>A#WaNc@5`$#QSUC$GT3G5&gLvyiS?_>+2MqjtI(!M;;sl=|T$*Os@_8 zJjT6o>q~j-@PvvAS88pCRV9ehE*=%?=q8%izIyZ!+$WO>^cJxX1>mF7?3o}1*c{Cb z+i;q%FqU@QnH+e{Y;Tdl-V@t2t9f^^f?KRrH;M+4PkH0>KrJJFW1E5Y1!Xj^8C>+iBN4WFIFN1BDm2F#6cF|*L;8H zK4hrCRxIp_0Y|rS#Xvbfc-ZbY1-!M0EqTc3Kw4|@s}6Na*Q?Qpxb>jkY3HTa-%;-b z54Wwp*Nwcx^9Wa?9_`q?$S(H$^$`!Nofr9k4F^|VD4R%|poVdlG79rNpHEx(uawMl zFFqSrpd=F+8|#mNg!+GtgHeC(A3I9lzPlkdwm=6Kpi|Ej&euhy|z)6DGJ;;T0{CSP3a&VOFnH-F~@@5Ae2 zcYgrZr;mZ%?DV;jjG$cGnqsu)5^y!P%|)>jcUP9Zy>;nFN#WFe5|@{TXq9Z7x?snX z?0s8=@3G6*Twp#|5;*M?@DA^dSy#2>x3eEsKgs+{1624p17|T{eWt>t|Mwd>?JF)3 zdL94baJR#cMs~RmH8Uo5Gq);q_4VnASDaLTziRcmN8K8GPPYIPiRiRb8@k&0<-fJa zExBF?Y!=rXTk63rvat1@`im>mV`QXEvs!?aclfGssSkb9=I4a(^(fh15Pw|`yj3zV zFi=6@SrQ-X48<$!fvb*S#dPq}^)896FPx9%ZU3F&xL-Lwj!V<6u;S&GX?~TO$I^gT z2GzWp2D~U&zU2v@qxd}wk;tX@(+)8KPsj64jc{$c3+z@_)|Bm4wXu Date: Wed, 5 Dec 2018 16:50:07 -0500 Subject: [PATCH 23/54] add support for histogram* traces on multicategory axes --- src/plots/cartesian/axes.js | 3 +- src/traces/histogram/calc.js | 5 +- src/traces/histogram/defaults.js | 4 +- src/traces/histogram2d/sample_defaults.js | 8 +- .../baselines/multicategory_histograms.png | Bin 0 -> 48998 bytes .../image/mocks/multicategory_histograms.json | 121 ++++++++++++++++++ 6 files changed, 133 insertions(+), 8 deletions(-) create mode 100644 test/image/baselines/multicategory_histograms.png create mode 100644 test/image/mocks/multicategory_histograms.json diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 98bd2630759..3fb7420a4d5 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -278,8 +278,7 @@ axes.autoBin = function(data, ax, nbins, is2d, calendar, size) { var dataMin = Lib.aggNums(Math.min, null, data); var dataMax = Lib.aggNums(Math.max, null, data); - // TODO multicategory, if we allow multicategory histograms - if(ax.type === 'category') { + if(ax.type === 'category' || ax.type === 'multicategory') { return { start: dataMin - 0.5, end: dataMax + 0.5, diff --git a/src/traces/histogram/calc.js b/src/traces/histogram/calc.js index a03f3cec3ae..8dd1a5f92d3 100644 --- a/src/traces/histogram/calc.js +++ b/src/traces/histogram/calc.js @@ -270,7 +270,8 @@ function calcAllAutoBins(gd, trace, pa, mainData, _overlayEdgeCase) { // Edge case: single-valued histogram overlaying others // Use them all together to calculate the bin size for the single-valued one - if(isOverlay && newBinSpec._dataSpan === 0 && pa.type !== 'category') { + if(isOverlay && newBinSpec._dataSpan === 0 && + pa.type !== 'category' && pa.type !== 'multicategory') { // Several single-valued histograms! Stop infinite recursion, // just return an extra flag that tells handleSingleValueOverlays // to sort out this trace too @@ -327,7 +328,7 @@ function calcAllAutoBins(gd, trace, pa, mainData, _overlayEdgeCase) { Lib.aggNums(Math.min, null, pos0); var dummyAx = { - type: pa.type === 'category' ? 'linear' : pa.type, + type: (pa.type === 'category' || pa.type === 'multicategory') ? 'linear' : pa.type, r2l: pa.r2l, dtick: binOpts.size, tick0: mainStart, diff --git a/src/traces/histogram/defaults.js b/src/traces/histogram/defaults.js index 9d5d3715461..96212f84328 100644 --- a/src/traces/histogram/defaults.js +++ b/src/traces/histogram/defaults.js @@ -36,7 +36,9 @@ module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout var sampleLetter = orientation === 'v' ? 'x' : 'y'; var aggLetter = orientation === 'v' ? 'y' : 'x'; - var len = (x && y) ? Math.min(x.length && y.length) : (traceOut[sampleLetter] || []).length; + var len = (x && y) ? + Math.min(Lib.minRowLength(x) && Lib.minRowLength(y)) : + Lib.minRowLength(traceOut[sampleLetter] || []); if(!len) { traceOut.visible = false; diff --git a/src/traces/histogram2d/sample_defaults.js b/src/traces/histogram2d/sample_defaults.js index aca6acf6595..92fe92f8e00 100644 --- a/src/traces/histogram2d/sample_defaults.js +++ b/src/traces/histogram2d/sample_defaults.js @@ -6,24 +6,26 @@ * LICENSE file in the root directory of this source tree. */ - 'use strict'; var Registry = require('../../registry'); +var Lib = require('../../lib'); module.exports = function handleSampleDefaults(traceIn, traceOut, coerce, layout) { var x = coerce('x'); var y = coerce('y'); + var xlen = Lib.minRowLength(x); + var ylen = Lib.minRowLength(y); // we could try to accept x0 and dx, etc... // but that's a pretty weird use case. // for now require both x and y explicitly specified. - if(!(x && x.length && y && y.length)) { + if(!(x && xlen && y && ylen)) { traceOut.visible = false; return; } - traceOut._length = Math.min(x.length, y.length); + traceOut._length = Math.min(xlen, ylen); var handleCalendarDefaults = Registry.getComponentMethod('calendars', 'handleTraceDefaults'); handleCalendarDefaults(traceIn, traceOut, ['x', 'y'], layout); diff --git a/test/image/baselines/multicategory_histograms.png b/test/image/baselines/multicategory_histograms.png new file mode 100644 index 0000000000000000000000000000000000000000..3ccdcc8140727ec3ce9a061257b41e4a12ba4ffa GIT binary patch literal 48998 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 Date: Wed, 5 Dec 2018 16:50:40 -0500 Subject: [PATCH 24/54] add support for finance traces on multicategory axes --- src/traces/ohlc/ohlc_defaults.js | 7 +-- .../image/baselines/finance_multicategory.png | Bin 0 -> 27457 bytes test/image/mocks/finance_multicategory.json | 41 ++++++++++++++++++ 3 files changed, 43 insertions(+), 5 deletions(-) create mode 100644 test/image/baselines/finance_multicategory.png create mode 100644 test/image/mocks/finance_multicategory.json diff --git a/src/traces/ohlc/ohlc_defaults.js b/src/traces/ohlc/ohlc_defaults.js index b1a6a83e10b..51baf99986f 100644 --- a/src/traces/ohlc/ohlc_defaults.js +++ b/src/traces/ohlc/ohlc_defaults.js @@ -6,11 +6,10 @@ * LICENSE file in the root directory of this source tree. */ - 'use strict'; var Registry = require('../../registry'); - +var Lib = require('../../lib'); module.exports = function handleOHLC(traceIn, traceOut, coerce, layout) { var x = coerce('x'); @@ -27,9 +26,7 @@ module.exports = function handleOHLC(traceIn, traceOut, coerce, layout) { if(!(open && high && low && close)) return; var len = Math.min(open.length, high.length, low.length, close.length); - - if(x) len = Math.min(len, x.length); - + if(x) len = Math.min(len, Lib.minRowLength(x)); traceOut._length = len; return len; diff --git a/test/image/baselines/finance_multicategory.png b/test/image/baselines/finance_multicategory.png new file mode 100644 index 0000000000000000000000000000000000000000..a3ddb013584f868fff1cf4de78b5944cd2ddc412 GIT binary patch literal 27457 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 v_-7^lv5w!K=pR3^d-wl;=rPN-_iojRnMW(Kzt( Date: Wed, 5 Dec 2018 16:51:20 -0500 Subject: [PATCH 25/54] test xaxis.automargin:true + long multicategory labels --- test/image/baselines/multicategory2.png | Bin 24926 -> 24978 bytes test/image/mocks/multicategory2.json | 6 +++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/image/baselines/multicategory2.png b/test/image/baselines/multicategory2.png index f99b84cf988f115c6b0c9d0e9b239c138b9e1e57..ccabc1796dc35c16fdc6a7f5c79680aaac48675f 100644 GIT binary patch literal 24978 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�(&EGII@T#XfbTV_%%Vc9UFcf9=ad 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 diff --git a/test/image/mocks/multicategory2.json b/test/image/mocks/multicategory2.json index c54caba7bcc..48606c39910 100644 --- a/test/image/mocks/multicategory2.json +++ b/test/image/mocks/multicategory2.json @@ -26,11 +26,11 @@ "layout": { "xaxis": { "title": "MULTI-CATEGORY ON TOP", - "side": "top" + "side": "top", + "automargin": true }, "showlegend": false, "width": 400, - "height": 800, - "margin": {"b": 40, "t": 200} + "height": 800 } } From 927c701fbde771a1b4c8320b2fe8b66b26969aea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 5 Dec 2018 16:51:36 -0500 Subject: [PATCH 26/54] add multicategory axis auto-type tests --- test/jasmine/tests/axes_test.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/test/jasmine/tests/axes_test.js b/test/jasmine/tests/axes_test.js index 5f2f39caaef..7d84a0cbc62 100644 --- a/test/jasmine/tests/axes_test.js +++ b/test/jasmine/tests/axes_test.js @@ -267,6 +267,20 @@ describe('Test axes', function() { }); checkTypes('date', 'linear'); }); + + it('needs one *true* category inner-array to be consider *multicategory*', function() { + supplyWithTrace({ + x: [ + [2018, 2018, 2017, 2017], + ['a', 'b', 'a', 'b'] + ], + y: [ + ['a', 'b', 'c'], + ['d', 'e', 'f'] + ] + }); + checkTypes('multicategory', 'multicategory'); + }); }); it('should set undefined linewidth/linecolor if linewidth, linecolor or showline is not supplied', function() { From b49ca0cafea396515255a6cf444913301c7e70b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 5 Dec 2018 17:46:54 -0500 Subject: [PATCH 27/54] fixup multicategory hover --- src/plots/cartesian/axes.js | 7 ++- test/jasmine/tests/hover_label_test.js | 61 ++++++++++++++++++++++++++ 2 files changed, 64 insertions(+), 4 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 3fb7420a4d5..c07b6896eca 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1169,10 +1169,9 @@ function formatCategory(ax, out) { function formatMultiCategory(ax, out, hover) { var v = Math.round(out.x); - var tt = ax._categories[v][1]; - var tt2 = ax._categories[v][0]; - tt = tt === undefined ? '' : String(tt); - tt2 = tt2 === undefined ? '' : String(tt2); + var cats = ax._categories[v] || []; + var tt = cats[1] === undefined ? '' : String(cats[1]); + var tt2 = cats[0] === undefined ? '' : String(cats[0]); if(hover) { // TODO is this what we want? diff --git a/test/jasmine/tests/hover_label_test.js b/test/jasmine/tests/hover_label_test.js index b8b3bc16dad..45116c6cc34 100644 --- a/test/jasmine/tests/hover_label_test.js +++ b/test/jasmine/tests/hover_label_test.js @@ -2055,6 +2055,67 @@ describe('hover on fill', function() { }); }); +describe('Hover on multicategory axes', function() { + var gd; + + beforeEach(function() { + gd = createGraphDiv(); + }); + + afterEach(destroyGraphDiv); + + function _hover(x, y) { + delete gd._hoverdata; + Lib.clearThrottle(); + mouseEvent('mousemove', x, y); + } + + it('should work for bar traces', function(done) { + Plotly.plot(gd, [{ + type: 'bar', + x: [['2018', '2018', '2019', '2019'], ['a', 'b', 'a', 'b']], + y: [1, 2, -1, 3] + }], { + bargap: 0, + width: 400, + height: 400 + }) + .then(function() { _hover(200, 200); }) + .then(function() { + assertHoverLabelContent({ nums: '−1', axis: '2019 - a' }); + }) + .then(function() { + return Plotly.update(gd, + {hovertemplate: 'Sample: %{x[1]}
Year: %{x[0]}'}, + {hovermode: 'closest'} + ); + }) + .then(function() { _hover(140, 200); }) + .then(function() { + assertHoverLabelContent({ nums: 'Sample: b\nYear: 2018' }); + }) + .catch(failTest) + .then(done); + }); + + it('should work on heatmap traces', function(done) { + var fig = Lib.extendDeep({}, require('@mocks/heatmap_multicategory.json')); + fig.data = [fig.data[0]]; + fig.layout.width = 500; + fig.layout.height = 500; + + Plotly.plot(gd, fig) + .then(function() { _hover(200, 200); }) + .then(function() { + assertHoverLabelContent({ + nums: 'x: 2017 - q3\ny: Group 3 - A\nz: 2.303' + }); + }) + .catch(failTest) + .then(done); + }); +}); + describe('hover updates', function() { 'use strict'; From e31306423c8b824ce4baa790344c6e6090545ada Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 5 Dec 2018 17:50:17 -0500 Subject: [PATCH 28/54] add multicategory mock to mock lists - making sure multicategory axes are tested during the react-noop test and during the minified bundle tests --- test/jasmine/assets/mock_lists.js | 1 + 1 file changed, 1 insertion(+) diff --git a/test/jasmine/assets/mock_lists.js b/test/jasmine/assets/mock_lists.js index 7b6387ab140..1918a44f77f 100644 --- a/test/jasmine/assets/mock_lists.js +++ b/test/jasmine/assets/mock_lists.js @@ -21,6 +21,7 @@ var svgMockList = [ ['geo_first', require('@mocks/geo_first.json')], ['layout_image', require('@mocks/layout_image.json')], ['layout-colorway', require('@mocks/layout-colorway.json')], + ['multicategory', require('@mocks/multicategory.json')], ['polar_categories', require('@mocks/polar_categories.json')], ['polar_direction', require('@mocks/polar_direction.json')], ['polar_wind-rose', require('@mocks/polar_wind-rose.json')], From 2bb1388b336058e5892b68a9a5e58b453bbb3ae9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 6 Dec 2018 11:55:39 -0500 Subject: [PATCH 29/54] make tickons:'boundaries' the dflt on multicategory axes --- src/plots/cartesian/axis_defaults.js | 10 +++++++--- .../image/baselines/finance_multicategory.png | Bin 27457 -> 27769 bytes .../baselines/multicategory_histograms.png | Bin 48998 -> 48899 bytes test/image/mocks/multicategory.json | 3 +-- test/image/mocks/multicategory2.json | 3 ++- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/plots/cartesian/axis_defaults.js b/src/plots/cartesian/axis_defaults.js index 343d6a22ff2..79440117ceb 100644 --- a/src/plots/cartesian/axis_defaults.js +++ b/src/plots/cartesian/axis_defaults.js @@ -90,14 +90,18 @@ module.exports = function handleAxisDefaults(containerIn, containerOut, coerce, if(options.automargin) coerce('automargin'); + var isMultiCategory = containerOut.type === 'multicategory'; + if(!options.noTickson && - (containerOut.type === 'category' || containerOut.type === 'multicategory') && + (containerOut.type === 'category' || isMultiCategory) && (containerOut.ticks || containerOut.showgrid) ) { - coerce('tickson'); + var ticksonDflt; + if(isMultiCategory) ticksonDflt = 'boundaries'; + coerce('tickson', ticksonDflt); } - if(containerOut.type === 'multicategory') { + if(isMultiCategory) { var showDividers = coerce('showdividers'); if(showDividers) { coerce('dividercolor'); diff --git a/test/image/baselines/finance_multicategory.png b/test/image/baselines/finance_multicategory.png index a3ddb013584f868fff1cf4de78b5944cd2ddc412..f7bc6c99e8c1edfe4046b1fc3c9ab99ea3df5404 100644 GIT binary patch literal 27769 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 e(G`I+)> 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 Qjs?CRDQP||d0-awUoml^X8-^I literal 48998 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 Date: Thu, 6 Dec 2018 12:25:34 -0500 Subject: [PATCH 30/54] ignore bar base on (multi)category size axes --- src/traces/bar/cross_trace_calc.js | 9 ++++++--- test/jasmine/tests/bar_test.js | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/src/traces/bar/cross_trace_calc.js b/src/traces/bar/cross_trace_calc.js index 66a2d3d3623..ff300d24ca5 100644 --- a/src/traces/bar/cross_trace_calc.js +++ b/src/traces/bar/cross_trace_calc.js @@ -126,11 +126,14 @@ function initBase(gd, pa, sa, calcTraces) { // time. But included here for completeness. var scalendar = trace.orientation === 'h' ? trace.xcalendar : trace.ycalendar; - // TODO skip for multicategory size axis? + // 'base' on categorical axes makes no sense + var d2c = sa.type === 'category' || sa.type === 'multicategory' ? + function() { return null; } : + sa.d2c; if(isArrayOrTypedArray(base)) { for(j = 0; j < Math.min(base.length, cd.length); j++) { - b = sa.d2c(base[j], 0, scalendar); + b = d2c(base[j], 0, scalendar); if(isNumeric(b)) { cd[j].b = +b; cd[j].hasB = 1; @@ -141,7 +144,7 @@ function initBase(gd, pa, sa, calcTraces) { cd[j].b = 0; } } else { - b = sa.d2c(base, 0, scalendar); + b = d2c(base, 0, scalendar); var hasBase = isNumeric(b); b = hasBase ? b : 0; for(j = 0; j < cd.length; j++) { diff --git a/test/jasmine/tests/bar_test.js b/test/jasmine/tests/bar_test.js index e950af844ee..f2b4911222a 100644 --- a/test/jasmine/tests/bar_test.js +++ b/test/jasmine/tests/bar_test.js @@ -878,6 +878,24 @@ describe('Bar.crossTraceCalc (formerly known as setPositions)', function() { var ya = gd._fullLayout.yaxis; expect(Axes.getAutoRange(gd, ya)).toBeCloseToArray([1.496, 2.027], undefined, '(ya.range)'); }); + + it('should ignore *base* on category axes', function() { + var gd = mockBarPlot([ + {x: ['a', 'b', 'c'], base: [0.2, -0.2, 1]}, + ]); + + expect(gd._fullLayout.xaxis.type).toBe('category'); + assertPointField(gd.calcdata, 'b', [[0, 0, 0]]); + }); + + it('should ignore *base* on multicategory axes', function() { + var gd = mockBarPlot([ + {x: [['a', 'a', 'b', 'b'], ['1', '2', '1', '2']], base: 10} + ]); + + expect(gd._fullLayout.xaxis.type).toBe('multicategory'); + assertPointField(gd.calcdata, 'b', [[0, 0, 0, 0]]); + }); }); describe('A bar plot', function() { From c802d321327bd0eeab257db82719930de555dfe1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 6 Dec 2018 14:25:36 -0500 Subject: [PATCH 31/54] fix box/violin x0/y0 multi-category edge case --- src/traces/box/calc.js | 6 +- .../box-violin-x0-category-position.png | Bin 0 -> 23376 bytes .../box-violin-x0-category-position.json | 65 ++++++++++++++++++ 3 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 test/image/baselines/box-violin-x0-category-position.png create mode 100644 test/image/mocks/box-violin-x0-category-position.json diff --git a/src/traces/box/calc.js b/src/traces/box/calc.js index 74ff33916c6..699ab193ba0 100644 --- a/src/traces/box/calc.js +++ b/src/traces/box/calc.js @@ -178,8 +178,10 @@ function getPos(trace, posLetter, posAxis, val, num) { pos0 = num; } - // TODO what to do on multicategory posAxis? - var pos0c = posAxis.d2c(pos0, 0, trace[posLetter + 'calendar']); + var pos0c = posAxis.type === 'multicategory' ? + posAxis.r2c(pos0) : + posAxis.d2c(pos0, 0, trace[posLetter + 'calendar']); + return val.map(function() { return pos0c; }); } diff --git a/test/image/baselines/box-violin-x0-category-position.png b/test/image/baselines/box-violin-x0-category-position.png new file mode 100644 index 0000000000000000000000000000000000000000..a2a2ef589e6649679f2cb37a0e635dfc7ac241f2 GIT binary patch literal 23376 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 literal 0 HcmV?d00001 diff --git a/test/image/mocks/box-violin-x0-category-position.json b/test/image/mocks/box-violin-x0-category-position.json new file mode 100644 index 00000000000..b3f2853d839 --- /dev/null +++ b/test/image/mocks/box-violin-x0-category-position.json @@ -0,0 +1,65 @@ +{ + "data": [ + { + "y": [ 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], + "x": [ + [ "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017" + ], + [ "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2" + ] + ], + "type": "box" + }, + { + "y": [ 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], + "x0": 0.5, + "type": "violin" + }, + { + "y": [ 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], + "x": [ "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", "day 2", + "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 2" + ], + "type": "box", + "xaxis": "x2", + "yaxis": "y2" + }, + { + "y": [ 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], + "x0": "day 2", + "type": "violin", + "xaxis": "x2", + "yaxis": "y2" + } + ], + "layout": { + "grid": { + "rows": 2, + "columns": 1, + "pattern": "independent" + }, + "annotations": [ + { + "xref": "x", + "yref": "y", + "x": 0.5, + "text": "violin at x0:0.5", + "y": 1.5 + }, + { + "xref": "x2", + "yref": "y2", + "x": "day 2", + "text": "box at x0:\"day 2\"", + "y": 1.5 + } + ], + "showlegend": false + } +} From 7c3dd01386c6c17a98a1f0642a097ce205ba7d23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 6 Dec 2018 15:00:07 -0500 Subject: [PATCH 32/54] fix heatmap/contour x0/y0 + multicategory edge case --- src/traces/heatmap/make_bound_array.js | 14 +++++++----- .../image/baselines/heatmap_multicategory.png | Bin 73948 -> 74970 bytes test/image/mocks/heatmap_multicategory.json | 21 ++++++++++++++---- 3 files changed, 26 insertions(+), 9 deletions(-) diff --git a/src/traces/heatmap/make_bound_array.js b/src/traces/heatmap/make_bound_array.js index 7bc8c4514df..ea3ec9a33a3 100644 --- a/src/traces/heatmap/make_bound_array.js +++ b/src/traces/heatmap/make_bound_array.js @@ -67,11 +67,15 @@ module.exports = function makeBoundArray(trace, arrayIn, v0In, dvIn, numbricks, var calendar = trace[ax._id.charAt(0) + 'calendar']; - if(isHist || ax.type === 'category') v0 = ax.r2c(v0In, 0, calendar) || 0; - else if(isArrayOrTypedArray(arrayIn) && arrayIn.length === 1) v0 = arrayIn[0]; - else if(v0In === undefined) v0 = 0; - else v0 = ax.d2c(v0In, 0, calendar); - // TODO what to do for multicategory? + if(isHist || ax.type === 'category' || ax.type === 'multicategory') { + v0 = ax.r2c(v0In, 0, calendar) || 0; + } else if(isArrayOrTypedArray(arrayIn) && arrayIn.length === 1) { + v0 = arrayIn[0]; + } else if(v0In === undefined) { + v0 = 0; + } else { + v0 = ax.d2c(v0In, 0, calendar); + } for(i = (isContour || isGL2D) ? 0 : -0.5; i < numbricks; i++) { arrayOut.push(v0 + dv * i); diff --git a/test/image/baselines/heatmap_multicategory.png b/test/image/baselines/heatmap_multicategory.png index 5d21f9e7f709660dbef580f53e25d1ac389b91df..a171c0f894015eb3ce13a457986867331e7959c3 100644 GIT binary patch literal 74970 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 literal 73948 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 Date: Thu, 6 Dec 2018 15:19:54 -0500 Subject: [PATCH 33/54] fix box/violin multicategory on value axis edge cases --- src/traces/box/defaults.js | 4 +- src/traces/violin/calc.js | 5 ++- .../box-violin-multicategory-on-val-axis.png | Bin 0 -> 20975 bytes .../box-violin-multicategory-on-val-axis.json | 38 ++++++++++++++++++ 4 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 test/image/baselines/box-violin-multicategory-on-val-axis.png create mode 100644 test/image/mocks/box-violin-multicategory-on-val-axis.json diff --git a/src/traces/box/defaults.js b/src/traces/box/defaults.js index 2175387fbf3..96bbdc8df79 100644 --- a/src/traces/box/defaults.js +++ b/src/traces/box/defaults.js @@ -48,12 +48,12 @@ function handleSampleDefaults(traceIn, traceOut, coerce, layout) { len = Math.min(Lib.minRowLength(x), Lib.minRowLength(y)); } else { coerce('x0'); - len = y.length; + len = Lib.minRowLength(y); } } else if(hasX) { defaultOrientation = 'h'; coerce('y0'); - len = x.length; + len = Lib.minRowLength(x); } else { traceOut.visible = false; return; diff --git a/src/traces/violin/calc.js b/src/traces/violin/calc.js index 46193bcea99..90a91b7ff10 100644 --- a/src/traces/violin/calc.js +++ b/src/traces/violin/calc.js @@ -123,8 +123,9 @@ function calcSpan(trace, cdi, valAxis, bandwidth) { function calcSpanItem(index) { var s = spanIn[index]; - // TODO skip on multicategory val axis? - var sc = valAxis.d2c(s, 0, trace[cdi.valLetter + 'calendar']); + var sc = valAxis.type === 'multicategory' ? + valAxis.r2c(s) : + valAxis.d2c(s, 0, trace[cdi.valLetter + 'calendar']); return sc === BADNUM ? spanLoose[index] : sc; } diff --git a/test/image/baselines/box-violin-multicategory-on-val-axis.png b/test/image/baselines/box-violin-multicategory-on-val-axis.png new file mode 100644 index 0000000000000000000000000000000000000000..a9791da61ea3e6e8c3d1e49be6768b8049e2c726 GIT binary patch literal 20975 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 S9314xaK^y&RH2?-*uMb<&{BZ_ literal 0 HcmV?d00001 diff --git a/test/image/mocks/box-violin-multicategory-on-val-axis.json b/test/image/mocks/box-violin-multicategory-on-val-axis.json new file mode 100644 index 00000000000..410563823fc --- /dev/null +++ b/test/image/mocks/box-violin-multicategory-on-val-axis.json @@ -0,0 +1,38 @@ +{ + "data": [ + { + "type": "violin", + "x": [ + [ "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", + "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018" + ], + [ "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", "day 2", + "day 2", "day 2", "day 2", "day 2", "day 2", "day 1", "day 1", + "day 1", "day 1", "day 1", "day 1", "day 2", "day 2", "day 2", + "day 2", "day 2", "day 2", "day 1", "day 1", "day 1", "day 1", + "day 1", "day 1", "day 2", "day 2", "day 2", "day 2", "day 2", "day 2" + ] + ], + "span": [0, 5] + }, + { + "type": "box", + "x": [ + [ "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", "2016", + "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", "2017", + "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018", "2018" + ], + [ "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", "day 2", "day 2", + "day 2", "day 2", "day 2", "day 2", "day 1", "day 1", "day 1", "day 1", + "day 1", "day 1", "day 2", "day 2", "day 2", "day 2", "day 2", "day 2", + "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", "day 2", "day 2", + "day 2", "day 2", "day 2", "day 2" + ] + ] + } + ], + "layout": { + "showlegend": false + } +} From 69ccfd311d27e952c4ea0c6f9fac68d7c6110cec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 6 Dec 2018 15:29:41 -0500 Subject: [PATCH 34/54] fix typed array support on axes with set type:multicategory --- src/lib/array.js | 2 +- src/plots/cartesian/set_convert.js | 2 +- test/jasmine/tests/axes_test.js | 13 +++++++++++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/lib/array.js b/src/lib/array.js index 529aa713915..cd96886d34e 100644 --- a/src/lib/array.js +++ b/src/lib/array.js @@ -143,7 +143,7 @@ exports.minRowLength = function(z) { function _rowLength(z, fn, len0) { if(isArrayOrTypedArray(z)) { - if(Array.isArray(z[0])) { + if(isArrayOrTypedArray(z[0])) { var len = len0; for(var i = 0; i < z.length; i++) { len = fn(len, z[i].length); diff --git a/src/plots/cartesian/set_convert.js b/src/plots/cartesian/set_convert.js index d22fa83d273..539f4e2510c 100644 --- a/src/plots/cartesian/set_convert.js +++ b/src/plots/cartesian/set_convert.js @@ -155,7 +155,7 @@ module.exports = function setConvert(ax, fullLayout) { // [ [cnt, {$cat: index}], for j .. arrayIn.length ] var seen = [[0, {}], [0, {}]]; - if(Array.isArray(arrayIn[0]) && Array.isArray(arrayIn[1])) { + if(Lib.isArrayOrTypedArray(arrayIn[0]) && Lib.isArrayOrTypedArray(arrayIn[1])) { for(i = 0; i < len; i++) { var v0 = arrayIn[0][i]; var v1 = arrayIn[1][i]; diff --git a/test/jasmine/tests/axes_test.js b/test/jasmine/tests/axes_test.js index 7d84a0cbc62..c317280a6fe 100644 --- a/test/jasmine/tests/axes_test.js +++ b/test/jasmine/tests/axes_test.js @@ -2862,6 +2862,19 @@ describe('Test axes', function() { expect(ax._categories).toEqual([]); expect(ax._categoriesMap).toEqual(undefined); }); + + it('case with inner typed arrays and set type:multicategory', function() { + var out = _makeCalcdata({ + x: [ + new Float32Array([1, 2, 1, 2]), + new Float32Array([10, 10, 20, 20]) + ] + }, 'x', 'multicategory'); + + expect(out).toEqual([0, 1, 2, 3]); + expect(ax._categories).toEqual([[1, 10], [1, 20], [2, 10], [2, 20]]); + expect(ax._categoriesMap).toEqual({'1,10': 0, '1,20': 1, '2,10': 2, '2,20': 3}); + }); }); describe('2d coordinate array on non-multicategory axes should return BADNUMs', function() { From 3746e03dc9e970062a307c0f348d57573b056d63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 6 Dec 2018 17:24:41 -0500 Subject: [PATCH 35/54] aj-proof multicategory ax-autotype logic --- src/plots/cartesian/axis_autotype.js | 14 +++++----- src/plots/cartesian/type_defaults.js | 18 ++++++------- src/traces/carpet/index.js | 2 +- test/jasmine/tests/axes_test.js | 38 +++++++++++++++++++++++++++- 4 files changed, 55 insertions(+), 17 deletions(-) diff --git a/src/plots/cartesian/axis_autotype.js b/src/plots/cartesian/axis_autotype.js index ae6dc40a6a7..f52531b2b60 100644 --- a/src/plots/cartesian/axis_autotype.js +++ b/src/plots/cartesian/axis_autotype.js @@ -14,8 +14,10 @@ var isNumeric = require('fast-isnumeric'); var Lib = require('../../lib'); var BADNUM = require('../../constants/numerical').BADNUM; -module.exports = function autoType(array, calendar) { - if(multiCategory(array)) return 'multicategory'; +module.exports = function autoType(array, calendar, opts) { + opts = opts || {}; + + if(!opts.noMultiCategory && multiCategory(array)) return 'multicategory'; if(moreDates(array, calendar)) return 'date'; if(category(array)) return 'category'; if(linearOK(array)) return 'linear'; @@ -83,9 +85,9 @@ function category(a) { return curvecats > curvenums * 2; } +// very-loose requirements for multicategory, +// trace modules that should never auto-type to multicategory +// should be declared with 'noMultiCategory' function multiCategory(a) { - return ( - Array.isArray(a[0]) && Array.isArray(a[1]) && - (category(a[0]) || category(a[1])) - ); + return Array.isArray(a[0]) && Array.isArray(a[1]); } diff --git a/src/plots/cartesian/type_defaults.js b/src/plots/cartesian/type_defaults.js index 1234f8a24a6..04a050f8938 100644 --- a/src/plots/cartesian/type_defaults.js +++ b/src/plots/cartesian/type_defaults.js @@ -8,7 +8,7 @@ 'use strict'; -var Registry = require('../../registry'); +var traceIs = require('../../registry').traceIs; var autoType = require('./axis_autotype'); /* @@ -57,6 +57,7 @@ function setAutoType(ax, data) { var calAttr = axLetter + 'calendar'; var calendar = d0[calAttr]; + var opts = {noMultiCategory: !traceIs(d0, 'cartesian') || traceIs(d0, 'noMultiCategory')}; var i; // check all boxes on this x axis to see @@ -67,8 +68,7 @@ function setAutoType(ax, data) { for(i = 0; i < data.length; i++) { var trace = data[i]; - if(!Registry.traceIs(trace, 'box-violin') || - (trace[axLetter + 'axis'] || axLetter) !== id) continue; + if(!traceIs(trace, 'box-violin') || (trace[axLetter + 'axis'] || axLetter) !== id) continue; if(trace[posLetter] !== undefined) boxPositions.push(trace[posLetter][0]); else if(trace.name !== undefined) boxPositions.push(trace.name); @@ -77,7 +77,7 @@ function setAutoType(ax, data) { if(trace[calAttr] !== calendar) calendar = undefined; } - ax.type = autoType(boxPositions, calendar); + ax.type = autoType(boxPositions, calendar, opts); } else if(d0.type === 'splom') { var dimensions = d0.dimensions; @@ -85,13 +85,13 @@ function setAutoType(ax, data) { for(i = 0; i < dimensions.length; i++) { var dim = dimensions[i]; if(dim.visible && (diag[i][0] === id || diag[i][1] === id)) { - ax.type = autoType(dim.values, calendar); + ax.type = autoType(dim.values, calendar, opts); break; } } } else { - ax.type = autoType(d0[axLetter] || [d0[axLetter + '0']], calendar); + ax.type = autoType(d0[axLetter] || [d0[axLetter + '0']], calendar, opts); } } @@ -122,9 +122,9 @@ function getBoxPosLetter(trace) { } function isBoxWithoutPositionCoords(trace, axLetter) { - var posLetter = getBoxPosLetter(trace), - isBox = Registry.traceIs(trace, 'box-violin'), - isCandlestick = Registry.traceIs(trace._fullInput || {}, 'candlestick'); + var posLetter = getBoxPosLetter(trace); + var isBox = traceIs(trace, 'box-violin'); + var isCandlestick = traceIs(trace._fullInput || {}, 'candlestick'); return ( isBox && diff --git a/src/traces/carpet/index.js b/src/traces/carpet/index.js index 2ebbb14a766..236129c9e1a 100644 --- a/src/traces/carpet/index.js +++ b/src/traces/carpet/index.js @@ -21,7 +21,7 @@ Carpet.isContainer = true; // so carpet traces get `calc` before other traces Carpet.moduleType = 'trace'; Carpet.name = 'carpet'; Carpet.basePlotModule = require('../../plots/cartesian'); -Carpet.categories = ['cartesian', 'svg', 'carpet', 'carpetAxis', 'notLegendIsolatable']; +Carpet.categories = ['cartesian', 'svg', 'carpet', 'carpetAxis', 'notLegendIsolatable', 'noMultiCategory']; Carpet.meta = { description: [ 'The data describing carpet axis layout is set in `y` and (optionally)', diff --git a/test/jasmine/tests/axes_test.js b/test/jasmine/tests/axes_test.js index c317280a6fe..ff3ff2eeff5 100644 --- a/test/jasmine/tests/axes_test.js +++ b/test/jasmine/tests/axes_test.js @@ -268,7 +268,7 @@ describe('Test axes', function() { checkTypes('date', 'linear'); }); - it('needs one *true* category inner-array to be consider *multicategory*', function() { + it('2d coordinate array are considered *multicategory*', function() { supplyWithTrace({ x: [ [2018, 2018, 2017, 2017], @@ -280,6 +280,42 @@ describe('Test axes', function() { ] }); checkTypes('multicategory', 'multicategory'); + + supplyWithTrace({ + x: [ + [2018, 2018, 2017, 2017], + [2018, 2018, 2017, 2017] + ], + y: [ + ['2018', '2018', '2017', '2017'], + ['2018', '2018', '2017', '2017'] + ] + }); + checkTypes('multicategory', 'multicategory'); + + supplyWithTrace({ + x: [ + [2018, 2018, 2017, 2017] + ], + y: [ + null, + ['d', 'e', 'f'] + ] + }); + checkTypes('linear', 'linear'); + + supplyWithTrace({ + type: 'carpet', + x: [ + [2018, 2018, 2017, 2017], + ['a', 'b', 'a', 'b'] + ], + y: [ + ['a', 'b', 'c'], + ['d', 'e', 'f'] + ] + }); + checkTypes('linear', 'linear'); }); }); From cbb3b7d2cc9c87cc33d2aa08ac56b276a1fc8ce6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 6 Dec 2018 18:09:09 -0500 Subject: [PATCH 36/54] add repositionOnUpdate opts for Axes.drawLabels - as x/y label text position can change on drag - test to come --- src/plots/cartesian/axes.js | 5 +++-- src/plots/polar/polar.js | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index c07b6896eca..18eeac80329 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1756,6 +1756,7 @@ axes.drawOne = function(gd, ax, opts) { vals: getSecondaryLabelVals(ax, vals), layer: mainAxLayer, cls: axId + 'tick2', + repositionOnUpdate: true, transFn: transFn, labelXFn: secondaryLabelFns.labelXFn, labelYFn: secondaryLabelFns.labelYFn, @@ -2283,6 +2284,7 @@ axes.drawZeroLine = function(gd, ax, opts) { * - {array of object} vals (calcTicks output-like) * - {d3 selection} layer * - {string (optional)} cls (node className) + * - {boolean} repositionOnUpdate (set to true to reposition update selection) * - {fn} transFn * - {fn} labelXFn * - {fn} labelYFn @@ -2336,8 +2338,7 @@ axes.drawLabels = function(gd, ax, opts) { tickLabels.exit().remove(); - // TODO ?? - if(isAngular(ax)) { + if(opts.repositionOnUpdate) { tickLabels.each(function(d) { d3.select(this).select('text') .call(svgTextUtils.positionText, labelXFn(d), labelYFn(d)); diff --git a/src/plots/polar/polar.js b/src/plots/polar/polar.js index 5e56eb258d7..e9d2d8ff8b0 100644 --- a/src/plots/polar/polar.js +++ b/src/plots/polar/polar.js @@ -643,6 +643,7 @@ proto.updateAngularAxis = function(fullLayout, polarLayout) { Axes.drawLabels(gd, ax, { vals: vals, layer: layers['angular-axis'], + repositionOnUpdate: true, transFn: transFn, labelXFn: labelXFn, labelYFn: labelYFn, From 1965dae36e97c3b8aa800e93cf161f71b54c0951 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Fri, 7 Dec 2018 16:52:22 -0500 Subject: [PATCH 37/54] rotate Drawing.bBox results in getLabelLevelSpan + generalize ax._lastangle to ax._tickAngles --- src/plots/cartesian/axes.js | 53 +++++++++----- test/jasmine/tests/axes_test.js | 2 +- test/jasmine/tests/cartesian_interact_test.js | 71 +++++++++++++++++++ 3 files changed, 108 insertions(+), 18 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 18eeac80329..45a866643d0 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1639,6 +1639,8 @@ axes.drawOne = function(gd, ax, opts) { // stash selections to avoid DOM queries e.g. // - stash tickLabels selection, so that drawTitle can use it to scoot title ax._selections = {}; + // stash tick angle (including the computed 'auto' values) per tick-label class + ax._tickAngles = {}; var transFn = axes.makeTransFn(ax); var tickVals; @@ -1748,7 +1750,7 @@ axes.drawOne = function(gd, ax, opts) { seq.push(function() { labelLength += getLabelLevelSpan(ax, axId + 'tick') + pad; - labelLength += ax._lastangle ? ax.tickfont.size * LINE_SPACING : 0; + labelLength += ax._tickAngles[axId + 'tick'] ? ax.tickfont.size * LINE_SPACING : 0; var secondaryPosition = mainLinePosition + labelLength * tickSigns[2]; var secondaryLabelFns = axes.makeLabelFns(ax, secondaryPosition); @@ -1973,19 +1975,26 @@ function getDividerVals(ax, vals) { } function getLabelLevelSpan(ax, cls) { - var out = 0; - var k = {x: 'height', y: 'width'}[ax._id.charAt(0)]; + var axLetter = ax._id.charAt(0); + var angle = ax._tickAngles[cls] || 0; + var rad = Lib.deg2rad(angle); + var sinA = Math.sin(rad); + var cosA = Math.cos(rad); + var maxX = 0; + var maxY = 0; + + // N.B. Drawing.bBox does not take into account rotate transforms ax._selections[cls].each(function() { var thisLabel = selectTickLabel(this); - - // TODO Drawing.bBox doesn't work when labels are rotated - // var bb = Drawing.bBox(thisLabel.node()); - var bb = thisLabel.node().getBoundingClientRect(); - out = Math.max(out, bb[k]); + var bb = Drawing.bBox(thisLabel.node()); + var w = bb.width; + var h = bb.height; + maxX = Math.max(maxX, cosA * w, sinA * h); + maxY = Math.max(maxY, sinA * w, cosA * h); }); - return out; + return {x: maxY, y: maxX}[axLetter]; } /** @@ -2280,6 +2289,7 @@ axes.drawZeroLine = function(gd, ax, opts) { * - {boolean} showticklabels * - {number} tickangle * - {object (optional)} _selections + * - {object} (optional)} _tickAngles * @param {object} opts * - {array of object} vals (calcTicks output-like) * - {d3 selection} layer @@ -2300,6 +2310,8 @@ axes.drawLabels = function(gd, ax, opts) { var labelXFn = opts.labelXFn; var labelYFn = opts.labelYFn; var labelAnchorFn = opts.labelAnchorFn; + var tickAngle = ax.tickangle; + var lastAngle = (ax._tickAngles || {})[cls]; var tickLabels = opts.layer.selectAll('g.' + cls) .data(ax.showticklabels ? vals : [], makeDataFn(ax)); @@ -2328,11 +2340,11 @@ axes.drawLabels = function(gd, ax, opts) { // instead position the label and promise this in // labelsReady labelsReady.push(gd._promises.pop().then(function() { - positionLabels(thisLabel, ax.tickangle); + positionLabels(thisLabel, tickAngle); })); } else { // sync label: just position it now. - positionLabels(thisLabel, ax.tickangle); + positionLabels(thisLabel, tickAngle); } }); @@ -2405,21 +2417,25 @@ axes.drawLabels = function(gd, ax, opts) { // do this without waiting, using the last calculated angle to // minimize flicker, then do it again when we know all labels are // there, putting back the prescribed angle to check for overlaps. - positionLabels(tickLabels, ax._lastangle || ax.tickangle); + positionLabels(tickLabels, lastAngle || tickAngle); function allLabelsReady() { return labelsReady.length && Promise.all(labelsReady); } function fixLabelOverlaps() { - positionLabels(tickLabels, ax.tickangle); + positionLabels(tickLabels, tickAngle); + + var autoangle = null; // check for auto-angling if x labels overlap // don't auto-angle at all for log axes with // base and digit format - if(vals.length && axLetter === 'x' && !isNumeric(ax.tickangle) && + if(vals.length && axLetter === 'x' && !isNumeric(tickAngle) && (ax.type !== 'log' || String(ax.dtick).charAt(0) !== 'D') ) { + autoangle = 0; + var maxFontSize = 0; var lbbArray = []; var i; @@ -2443,8 +2459,6 @@ axes.drawLabels = function(gd, ax, opts) { }); }); - var autoangle = 0; - if((ax.tickson === 'boundaries' || ax.showdividers) && cls === ax._id + 'tick') { var gap = 2; if(ax.ticks) gap += ax.tickwidth / 2; @@ -2479,7 +2493,12 @@ axes.drawLabels = function(gd, ax, opts) { if(autoangle) { positionLabels(tickLabels, autoangle); } - ax._lastangle = autoangle; + } + + if(ax._tickAngles) { + ax._tickAngles[cls] = autoangle === null ? + (isNumeric(tickAngle) ? tickAngle : 0) : + autoangle; } } diff --git a/test/jasmine/tests/axes_test.js b/test/jasmine/tests/axes_test.js index ff3ff2eeff5..2a4dfc2844b 100644 --- a/test/jasmine/tests/axes_test.js +++ b/test/jasmine/tests/axes_test.js @@ -2964,7 +2964,7 @@ describe('Test axes', function() { Plotly.plot(gd, data) .then(function() { - expect(gd._fullLayout.xaxis._lastangle).toBe(30); + expect(gd._fullLayout.xaxis._tickAngles.xtick).toBe(30); initialSize = previousSize = Lib.extendDeep({}, gd._fullLayout._size); return Plotly.relayout(gd, {'yaxis.automargin': true}); diff --git a/test/jasmine/tests/cartesian_interact_test.js b/test/jasmine/tests/cartesian_interact_test.js index 4843939de02..b124e9cc2fb 100644 --- a/test/jasmine/tests/cartesian_interact_test.js +++ b/test/jasmine/tests/cartesian_interact_test.js @@ -673,6 +673,77 @@ describe('axis zoom/pan and main plot zoom', function() { .catch(failTest) .then(done); }); + + it('should compute correct multicategory tick label span during drag', function(done) { + var fig = Lib.extendDeep({}, require('@mocks/multicategory.json')); + + var dragCoverNode; + var p1; + + function _dragStart(draggerClassName, p0, dp) { + var node = getDragger('xy', draggerClassName); + mouseEvent('mousemove', p0[0], p0[1], {element: node}); + mouseEvent('mousedown', p0[0], p0[1], {element: node}); + + var promise = drag.waitForDragCover().then(function(dcn) { + dragCoverNode = dcn; + p1 = [p0[0] + dp[0], p0[1] + dp[1]]; + mouseEvent('mousemove', p1[0], p1[1], {element: dragCoverNode}); + }); + return promise; + } + + function _assertAndDragEnd(msg, exp) { + _assertLabels(msg, exp); + mouseEvent('mouseup', p1[0], p1[1], {element: dragCoverNode}); + return drag.waitForDragCoverRemoval(); + } + + function _assertLabels(msg, exp) { + var tickLabels = d3.select(gd).selectAll('.xtick > text'); + expect(tickLabels.size()).toBe(exp.angle.length, msg + ' - # of tick labels'); + + tickLabels.each(function(_, i) { + var t = d3.select(this).attr('transform'); + var rotate = (t.split('rotate(')[1] || '').split(')')[0]; + var angle = rotate.split(',')[0]; + expect(Number(angle)).toBe(exp.angle[i], msg + ' - node ' + i); + + }); + + var tickLabels2 = d3.select(gd).selectAll('.xtick2 > text'); + expect(tickLabels2.size()).toBe(exp.y.length, msg + ' - # of secondary labels'); + + tickLabels2.each(function(_, i) { + var y = d3.select(this).attr('y'); + expect(Number(y)).toBeWithin(exp.y[i], 5, msg + ' - node ' + i); + }); + } + + Plotly.plot(gd, fig) + .then(function() { + _assertLabels('base', { + angle: [0, 0, 0, 0, 0, 0, 0], + y: [406, 406] + }); + }) + .then(function() { return _dragStart('edrag', [585, 390], [-340, 0]); }) + .then(function() { + return _assertAndDragEnd('drag to wide-range -> rotates labels', { + angle: [90, 90, 90, 90, 90, 90, 90], + y: [430, 430] + }); + }) + .then(function() { return _dragStart('edrag', [585, 390], [100, 0]); }) + .then(function() { + return _assertAndDragEnd('drag to narrow-range -> un-rotates labels', { + angle: [0, 0, 0, 0, 0, 0, 0], + y: [406, 406] + }); + }) + .catch(failTest) + .then(done); + }); }); describe('Event data:', function() { From ad971717b3523a3515b0a71b527482bf6dee3c0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Fri, 7 Dec 2018 16:52:51 -0500 Subject: [PATCH 38/54] do not try to use ax.tickangle for secondary labels --- src/plots/cartesian/axes.js | 6 ++++-- .../baselines/box_grouped-multicategory.png | Bin 29265 -> 29716 bytes .../mocks/box_grouped-multicategory.json | 3 +++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 45a866643d0..00b4ca78dbf 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1759,6 +1759,7 @@ axes.drawOne = function(gd, ax, opts) { layer: mainAxLayer, cls: axId + 'tick2', repositionOnUpdate: true, + secondary: true, transFn: transFn, labelXFn: secondaryLabelFns.labelXFn, labelYFn: secondaryLabelFns.labelYFn, @@ -2295,6 +2296,7 @@ axes.drawZeroLine = function(gd, ax, opts) { * - {d3 selection} layer * - {string (optional)} cls (node className) * - {boolean} repositionOnUpdate (set to true to reposition update selection) + * - {boolean} secondary * - {fn} transFn * - {fn} labelXFn * - {fn} labelYFn @@ -2310,7 +2312,7 @@ axes.drawLabels = function(gd, ax, opts) { var labelXFn = opts.labelXFn; var labelYFn = opts.labelYFn; var labelAnchorFn = opts.labelAnchorFn; - var tickAngle = ax.tickangle; + var tickAngle = opts.secondary ? 0 : ax.tickangle; var lastAngle = (ax._tickAngles || {})[cls]; var tickLabels = opts.layer.selectAll('g.' + cls) @@ -2459,7 +2461,7 @@ axes.drawLabels = function(gd, ax, opts) { }); }); - if((ax.tickson === 'boundaries' || ax.showdividers) && cls === ax._id + 'tick') { + if((ax.tickson === 'boundaries' || ax.showdividers) && !opts.secondary) { var gap = 2; if(ax.ticks) gap += ax.tickwidth / 2; diff --git a/test/image/baselines/box_grouped-multicategory.png b/test/image/baselines/box_grouped-multicategory.png index 5be51b80951e93b79c4cb35298fc1491045fe278..395b10cc1061277a164ae023ebda3fb2d5395dfd 100644 GIT binary patch literal 29716 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 I?Q!lu01lvpuK)l5 literal 29265 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 Date: Tue, 11 Dec 2018 08:46:13 -0500 Subject: [PATCH 39/54] accept typed array as inner arrays in multicategory autotype --- src/plots/cartesian/axis_autotype.js | 2 +- test/jasmine/tests/axes_test.js | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/plots/cartesian/axis_autotype.js b/src/plots/cartesian/axis_autotype.js index f52531b2b60..3cb03c9fe4d 100644 --- a/src/plots/cartesian/axis_autotype.js +++ b/src/plots/cartesian/axis_autotype.js @@ -89,5 +89,5 @@ function category(a) { // trace modules that should never auto-type to multicategory // should be declared with 'noMultiCategory' function multiCategory(a) { - return Array.isArray(a[0]) && Array.isArray(a[1]); + return Lib.isArrayOrTypedArray(a[0]) && Lib.isArrayOrTypedArray(a[1]); } diff --git a/test/jasmine/tests/axes_test.js b/test/jasmine/tests/axes_test.js index 2a4dfc2844b..a4f31b78d11 100644 --- a/test/jasmine/tests/axes_test.js +++ b/test/jasmine/tests/axes_test.js @@ -293,6 +293,18 @@ describe('Test axes', function() { }); checkTypes('multicategory', 'multicategory'); + supplyWithTrace({ + x: [ + new Float32Array([2018, 2018, 2017, 2017]), + [2018, 2018, 2017, 2017] + ], + y: [ + [2018, 2018, 2017, 2017], + new Float64Array([2018, 2018, 2017, 2017]) + ] + }); + checkTypes('multicategory', 'multicategory'); + supplyWithTrace({ x: [ [2018, 2018, 2017, 2017] From 3bc03e5688a7c45c550255ad90e4c084fd0f9c20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 11 Dec 2018 08:49:24 -0500 Subject: [PATCH 40/54] add explanation for why multicategory axes have no d2c & d2l --- src/plots/cartesian/set_convert.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/plots/cartesian/set_convert.js b/src/plots/cartesian/set_convert.js index 539f4e2510c..a48df0ffdef 100644 --- a/src/plots/cartesian/set_convert.js +++ b/src/plots/cartesian/set_convert.js @@ -301,7 +301,10 @@ module.exports = function setConvert(ax, fullLayout) { }; } else if(ax.type === 'multicategory') { - // ax.d2c = ax.d2l = setMultiCategoryIndex; + // N.B. multicategory axes don't define d2c and d2l, + // as 'data-to-calcdata' conversion needs to take into + // account all data array items as in ax.makeCalcdata. + ax.r2d = ax.c2d = ax.l2d = getCategoryName; ax.d2r = ax.d2l_noadd = getCategoryIndex; From e71b7df03a2ef5755561eea86a9accc6beede137 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 11 Dec 2018 09:00:54 -0500 Subject: [PATCH 41/54] assert multicategory event data --- test/jasmine/tests/hover_label_test.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/test/jasmine/tests/hover_label_test.js b/test/jasmine/tests/hover_label_test.js index 45116c6cc34..5e0ea9a037b 100644 --- a/test/jasmine/tests/hover_label_test.js +++ b/test/jasmine/tests/hover_label_test.js @@ -2057,6 +2057,7 @@ describe('hover on fill', function() { describe('Hover on multicategory axes', function() { var gd; + var eventData; beforeEach(function() { gd = createGraphDiv(); @@ -2080,9 +2081,15 @@ describe('Hover on multicategory axes', function() { width: 400, height: 400 }) + .then(function() { + gd.on('plotly_hover', function(d) { + eventData = d.points[0]; + }); + }) .then(function() { _hover(200, 200); }) .then(function() { assertHoverLabelContent({ nums: '−1', axis: '2019 - a' }); + expect(eventData.x).toEqual(['2019', 'a']); }) .then(function() { return Plotly.update(gd, @@ -2093,6 +2100,7 @@ describe('Hover on multicategory axes', function() { .then(function() { _hover(140, 200); }) .then(function() { assertHoverLabelContent({ nums: 'Sample: b\nYear: 2018' }); + expect(eventData.x).toEqual(['2018', 'b']); }) .catch(failTest) .then(done); @@ -2105,11 +2113,17 @@ describe('Hover on multicategory axes', function() { fig.layout.height = 500; Plotly.plot(gd, fig) + .then(function() { + gd.on('plotly_hover', function(d) { + eventData = d.points[0]; + }); + }) .then(function() { _hover(200, 200); }) .then(function() { assertHoverLabelContent({ nums: 'x: 2017 - q3\ny: Group 3 - A\nz: 2.303' }); + expect(eventData.x).toEqual(['2017', 'q3']); }) .catch(failTest) .then(done); From 5c8598121f6a04b6193e5aab65de6916701eb6af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 11 Dec 2018 09:15:06 -0500 Subject: [PATCH 42/54] fix multicategory ax.cleanPos --- src/plots/cartesian/set_convert.js | 2 +- .../box-violin-x0-category-position.png | Bin 23376 -> 30138 bytes .../box-violin-x0-category-position.json | 26 ++++++++++++++++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/plots/cartesian/set_convert.js b/src/plots/cartesian/set_convert.js index a48df0ffdef..b07d5d02b11 100644 --- a/src/plots/cartesian/set_convert.js +++ b/src/plots/cartesian/set_convert.js @@ -322,7 +322,7 @@ module.exports = function setConvert(ax, fullLayout) { ax.p2r = p2l; ax.cleanPos = function(v) { - if(typeof v === 'string' && v !== '') return v; + if(Array.isArray(v) || (typeof v === 'string' && v !== '')) return v; return ensureNumber(v); }; } diff --git a/test/image/baselines/box-violin-x0-category-position.png b/test/image/baselines/box-violin-x0-category-position.png index a2a2ef589e6649679f2cb37a0e635dfc7ac241f2..fda7376a412cc692dd5c67eaaf03da63f4fac131 100644 GIT binary patch literal 30138 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 RNlXNOZYgOh7R%oc{(tqg!e9UZ literal 23376 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 diff --git a/test/image/mocks/box-violin-x0-category-position.json b/test/image/mocks/box-violin-x0-category-position.json index b3f2853d839..58a8a410345 100644 --- a/test/image/mocks/box-violin-x0-category-position.json +++ b/test/image/mocks/box-violin-x0-category-position.json @@ -19,6 +19,17 @@ "x0": 0.5, "type": "violin" }, + { + "y": [ 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], + "x0": ["2017", "day 1"], + "type": "violin" + }, + { + "y": [ 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], + "x0": "2017,day 2", + "type": "violin" + }, + { "y": [ 0.2, 0.2, 0.6, 1, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], "x": [ "day 1", "day 1", "day 1", "day 1", "day 1", "day 1", "day 2", @@ -52,6 +63,21 @@ "text": "violin at x0:0.5", "y": 1.5 }, + { + "xref": "x", + "yref": "y", + "x": ["2017", "day 1"], + "text": "violin at x0:[2017,day 1]", + "y": 1.5 + }, + { + "xref": "x", + "yref": "y", + "x": "2017,day 2", + "text": "violin at x0:\"2017,day 2\"", + "y": 1.5, + "ay": -50 + }, { "xref": "x2", "yref": "y2", From 627f24b68052e1cda45fea65fcf20901309bf303 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 11 Dec 2018 09:25:13 -0500 Subject: [PATCH 43/54] simplify histogram2d x/y len logic --- src/traces/histogram2d/sample_defaults.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/traces/histogram2d/sample_defaults.js b/src/traces/histogram2d/sample_defaults.js index 92fe92f8e00..5ad6e547ecf 100644 --- a/src/traces/histogram2d/sample_defaults.js +++ b/src/traces/histogram2d/sample_defaults.js @@ -20,7 +20,7 @@ module.exports = function handleSampleDefaults(traceIn, traceOut, coerce, layout // we could try to accept x0 and dx, etc... // but that's a pretty weird use case. // for now require both x and y explicitly specified. - if(!(x && xlen && y && ylen)) { + if(!xlen || !ylen) { traceOut.visible = false; return; } From a25c5e3cf23bd5af3f2bf45e3f161d7569fdf9fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 11 Dec 2018 09:37:04 -0500 Subject: [PATCH 44/54] aj-proof heatmap_multicategory mock --- .../image/baselines/heatmap_multicategory.png | Bin 74970 -> 114829 bytes test/image/mocks/heatmap_multicategory.json | 20 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/test/image/baselines/heatmap_multicategory.png b/test/image/baselines/heatmap_multicategory.png index a171c0f894015eb3ce13a457986867331e7959c3..4146cc7508b0353c9b9c004a96bb20f34aa5fcbd 100644 GIT binary patch literal 114829 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 literal 74970 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 diff --git a/test/image/mocks/heatmap_multicategory.json b/test/image/mocks/heatmap_multicategory.json index ae7dab0e03f..bcbb22c2c13 100644 --- a/test/image/mocks/heatmap_multicategory.json +++ b/test/image/mocks/heatmap_multicategory.json @@ -38,16 +38,16 @@ ["Group 1", "Group 1", "Group 1", "Group 2", "Group 2", "Group 2", "Group 3", "Group 3", "Group 3"], ["A", "B", "C", "A", "B", "C", "A", "B", "C"] ], - "z": [ - [ 0.1304, 1.046, 2.45, 3.226, 4.34, 5.40, 6.05 ], - [ 0.3515, 1.326, 2.18, 3.26, 4.41, 5.25, 6.11 ], - [ 0.3994, 1.167, 2.09, 3.306, 4.305, 5.35, 6.00 ], - [ 0.32, 1.44, 2.303, 3.115, 4.49, 5.25, 6.46 ], - [ 0.297, 1.295, 2.49, 3.428, 4.13, 5.41, 6.38 ], - [ 0.0197, 1.274, 2.407, 3.22, 4.47, 5.44, 6.28 ], - [ 0.4446, 1.223, 2.367, 3.253, 4.385, 5.08, 6.19 ], - [ 0.4602, 1.2256, 2.3356, 3.0667, 4.498, 5.411, 6.29 ], - [ 0.304, 1.465, 2.474, 3.05, 4.38, 5.245, 6.12 ] + "z":[ + [0, 10, 0, null, 0, 10, 0], + [10, 80, 20, null, 10, 80, 20], + [0, 40, 0, null, 0, 40, 0], + [0, 10, 0, null, 0, 10, 0], + [10, 80, 20, null, 10, 80, 20], + [0, 40, 0, null, 0, 40, 0], + [0, 10, 0, null, 0, 10, 0], + [10, 80, 20, null, 10, 80, 20], + [0, 40, 0, null, 0, 40, 0] ], "contours": { "coloring": "lines", From 858f7c2aea73f03f06215c280dd11c3429d11584 Mon Sep 17 00:00:00 2001 From: alexcjohnson Date: Mon, 19 Nov 2018 21:49:30 -0500 Subject: [PATCH 45/54] fix #3255 - get automargin calls out of supplyDefaults --- src/components/rangeslider/draw.js | 5 +++ src/plots/plots.js | 45 +++++++++++++---------- test/jasmine/tests/heatmap_test.js | 5 +++ test/jasmine/tests/plot_api_react_test.js | 45 +++++++++++++++++++++++ test/jasmine/tests/plots_test.js | 4 +- test/jasmine/tests/splom_test.js | 14 +++---- 6 files changed, 89 insertions(+), 29 deletions(-) diff --git a/src/components/rangeslider/draw.js b/src/components/rangeslider/draw.js index 76ef7a04a78..8bc9eef7673 100644 --- a/src/components/rangeslider/draw.js +++ b/src/components/rangeslider/draw.js @@ -445,6 +445,11 @@ function drawRangePlot(rangeSlider, gd, axisOpts, opts) { var xa = mockFigure._fullLayout.xaxis; var ya = mockFigure._fullLayout[oppAxisName]; + xa.clearCalc(); + xa.setScale(); + ya.clearCalc(); + ya.setScale(); + var plotinfo = { id: id, plotgroup: plotgroup, diff --git a/src/plots/plots.js b/src/plots/plots.js index e2a28e87a39..b8ce8d5fe6c 100644 --- a/src/plots/plots.js +++ b/src/plots/plots.js @@ -497,15 +497,8 @@ plots.supplyDefaults = function(gd, opts) { if(uids[uid] === 'old') delete tracePreGUI[uid]; } - // TODO may return a promise - plots.doAutoMargin(gd); - - // set scale after auto margin routine - var axList = axisIDs.list(gd); - for(i = 0; i < axList.length; i++) { - var ax = axList[i]; - ax.setScale(); - } + // set up containers for margin calculations + initMargins(newFullLayout); // update object references in calcdata if(!skipUpdateCalc && oldCalcdata.length === newFullData.length) { @@ -1686,7 +1679,20 @@ plots.allowAutoMargin = function(gd, id) { gd._fullLayout._pushmarginIds[id] = 1; }; -function setupAutoMargin(fullLayout) { +function initMargins(fullLayout) { + var margin = fullLayout.margin; + + if(!fullLayout._size) { + var gs = fullLayout._size = { + l: Math.round(margin.l), + r: Math.round(margin.r), + t: Math.round(margin.t), + b: Math.round(margin.b), + p: Math.round(margin.pad) + }; + gs.w = Math.round(fullLayout.width) - gs.l - gs.r; + gs.h = Math.round(fullLayout.height) - gs.t - gs.b; + } if(!fullLayout._pushmargin) fullLayout._pushmargin = {}; if(!fullLayout._pushmarginIds) fullLayout._pushmarginIds = {}; } @@ -1709,8 +1715,6 @@ function setupAutoMargin(fullLayout) { plots.autoMargin = function(gd, id, o) { var fullLayout = gd._fullLayout; - setupAutoMargin(fullLayout); - var pushMargin = fullLayout._pushmargin; var pushMarginIds = fullLayout._pushmarginIds; @@ -1754,18 +1758,19 @@ plots.autoMargin = function(gd, id, o) { plots.doAutoMargin = function(gd) { var fullLayout = gd._fullLayout; if(!fullLayout._size) fullLayout._size = {}; - setupAutoMargin(fullLayout); + initMargins(fullLayout); - var gs = fullLayout._size, - oldmargins = JSON.stringify(gs); + var gs = fullLayout._size; + var oldmargins = JSON.stringify(gs); + var margin = fullLayout.margin; // adjust margins for outside components // fullLayout.margin is the requested margin, // fullLayout._size has margins and plotsize after adjustment - var ml = Math.max(fullLayout.margin.l || 0, 0); - var mr = Math.max(fullLayout.margin.r || 0, 0); - var mt = Math.max(fullLayout.margin.t || 0, 0); - var mb = Math.max(fullLayout.margin.b || 0, 0); + var ml = margin.l; + var mr = margin.r; + var mt = margin.t; + var mb = margin.b; var pushMargin = fullLayout._pushmargin; var pushMarginIds = fullLayout._pushmarginIds; @@ -1835,7 +1840,7 @@ plots.doAutoMargin = function(gd) { gs.r = Math.round(mr); gs.t = Math.round(mt); gs.b = Math.round(mb); - gs.p = Math.round(fullLayout.margin.pad); + gs.p = Math.round(margin.pad); gs.w = Math.round(fullLayout.width) - gs.l - gs.r; gs.h = Math.round(fullLayout.height) - gs.t - gs.b; diff --git a/test/jasmine/tests/heatmap_test.js b/test/jasmine/tests/heatmap_test.js index 277c0b33abf..5c4f7f9fc4e 100644 --- a/test/jasmine/tests/heatmap_test.js +++ b/test/jasmine/tests/heatmap_test.js @@ -298,6 +298,11 @@ describe('heatmap calc', function() { fullTrace._extremes = {}; + // clearCalc used to be (oddly enough) part of supplyDefaults. + // Now it's in doCalcData, which we don't include in this partial pathway. + fullLayout.xaxis.clearCalc(); + fullLayout.yaxis.clearCalc(); + var out = Heatmap.calc(gd, fullTrace)[0]; out._xcategories = fullLayout.xaxis._categories; out._ycategories = fullLayout.yaxis._categories; diff --git a/test/jasmine/tests/plot_api_react_test.js b/test/jasmine/tests/plot_api_react_test.js index 812eb6f63e5..4dbf48ddc8a 100644 --- a/test/jasmine/tests/plot_api_react_test.js +++ b/test/jasmine/tests/plot_api_react_test.js @@ -468,6 +468,51 @@ describe('@noCIdep Plotly.react', function() { .then(done); }); + it('can change from scatter to category scatterpolar and back', function(done) { + function scatter() { + return { + data: [{x: ['a', 'b'], y: [1, 2]}], + layout: {width: 400, height: 400, margin: {r: 80, t: 20}} + }; + } + + function scatterpolar() { + return { + // the bug https://github.com/plotly/plotly.js/issues/3255 + // required all of this to change: + // - type -> scatterpolar + // - category theta + // - margins changed + data: [{type: 'scatterpolar', r: [1, 2, 3], theta: ['a', 'b', 'c']}], + layout: {width: 400, height: 400, margin: {r: 80, t: 50}} + }; + } + + function countTraces(scatterTraces, polarTraces) { + expect(document.querySelectorAll('.scatter').length) + .toBe(scatterTraces + polarTraces); + expect(document.querySelectorAll('.xy .scatter').length) + .toBe(scatterTraces); + expect(document.querySelectorAll('.polar .scatter').length) + .toBe(polarTraces); + } + + Plotly.newPlot(gd, scatter()) + .then(function() { + countTraces(1, 0); + return Plotly.react(gd, scatterpolar()); + }) + .then(function() { + countTraces(0, 1); + return Plotly.react(gd, scatter()); + }) + .then(function() { + countTraces(1, 0); + }) + .catch(failTest) + .then(done); + }); + it('can change data in candlesticks multiple times', function(done) { // test that we've fixed the original issue in // https://github.com/plotly/plotly.js/issues/2510 diff --git a/test/jasmine/tests/plots_test.js b/test/jasmine/tests/plots_test.js index 49c7c33ed54..11db2d50a96 100644 --- a/test/jasmine/tests/plots_test.js +++ b/test/jasmine/tests/plots_test.js @@ -83,9 +83,9 @@ describe('Test Plots', function() { expect(gd._fullLayout.someFunc).toBe(oldFullLayout.someFunc); expect(gd._fullLayout.xaxis.c2p) - .not.toBe(oldFullLayout.xaxis.c2p, '(set during ax.setScale'); + .not.toBe(oldFullLayout.xaxis.c2p, '(set during setConvert)'); expect(gd._fullLayout.yaxis._m) - .not.toBe(oldFullLayout.yaxis._m, '(set during ax.setScale'); + .toBe(oldFullLayout.yaxis._m, '(we don\'t run ax.setScale here)'); }); it('should include the correct reference to user data', function() { diff --git a/test/jasmine/tests/splom_test.js b/test/jasmine/tests/splom_test.js index 3c4d81911b3..3e09444efd9 100644 --- a/test/jasmine/tests/splom_test.js +++ b/test/jasmine/tests/splom_test.js @@ -820,11 +820,11 @@ describe('Test splom interactions:', function() { function _assert(msg, exp) { var splomScenes = gd._fullLayout._splomScenes; - var ids = Object.keys(splomScenes); + var ids = gd._fullData.map(function(trace) { return trace.uid; }); for(var i = 0; i < 3; i++) { var drawFn = splomScenes[ids[i]].draw; - expect(drawFn).toHaveBeenCalledTimes(exp[i], msg + ' - trace ' + i); + expect(drawFn.calls.count()).toBe(exp[i], msg + ' - trace ' + i); drawFn.calls.reset(); } } @@ -869,7 +869,7 @@ describe('Test splom interactions:', function() { methods.forEach(function(m) { spyOn(Plots, m).and.callThrough(); }); - function assetsFnCall(msg, exp) { + function assertFnCall(msg, exp) { methods.forEach(function(m) { expect(Plots[m]).toHaveBeenCalledTimes(exp[m], msg); Plots[m].calls.reset(); @@ -879,7 +879,7 @@ describe('Test splom interactions:', function() { spyOn(Lib, 'log'); Plotly.plot(gd, fig).then(function() { - assetsFnCall('base', { + assertFnCall('base', { cleanPlot: 1, // called once from inside Plots.supplyDefaults supplyDefaults: 1, doCalcdata: 1 @@ -892,9 +892,9 @@ describe('Test splom interactions:', function() { return Plotly.relayout(gd, {width: 4810, height: 3656}); }) .then(function() { - assetsFnCall('after', { - cleanPlot: 4, // 3 three from supplyDefaults, once in drawFramework - supplyDefaults: 3, // 1 from relayout, 1 from automargin, 1 in drawFramework + assertFnCall('after', { + cleanPlot: 3, // 2 from supplyDefaults, once in drawFramework + supplyDefaults: 2, // 1 from relayout, 1 in drawFramework doCalcdata: 1 // once in drawFramework }); assertDims('after', 4810, 3656); From bdabf48c298001f490368618db0bd4281ae22a89 Mon Sep 17 00:00:00 2001 From: alexcjohnson Date: Tue, 20 Nov 2018 11:31:46 -0500 Subject: [PATCH 46/54] refactor rangeslider pipeline --- src/components/legend/defaults.js | 2 +- src/components/rangeslider/draw.js | 57 ++++--------- src/components/rangeslider/helpers.js | 66 ++++++++++++++ src/components/rangeslider/index.js | 6 +- src/plot_api/plot_api.js | 8 +- src/plot_api/subroutines.js | 56 +----------- src/plots/cartesian/autorange.js | 15 ++-- src/plots/cartesian/axes.js | 109 +++++++++++++++--------- src/plots/cartesian/constraints.js | 2 +- src/plots/cartesian/layout_defaults.js | 6 +- src/plots/plots.js | 55 +++++++++++- test/jasmine/tests/range_slider_test.js | 4 +- 12 files changed, 229 insertions(+), 157 deletions(-) create mode 100644 src/components/rangeslider/helpers.js diff --git a/src/components/legend/defaults.js b/src/components/legend/defaults.js index ada758b9955..5b653c02884 100644 --- a/src/components/legend/defaults.js +++ b/src/components/legend/defaults.js @@ -86,7 +86,7 @@ module.exports = function legendDefaults(layoutIn, layoutOut, fullData) { coerce('orientation'); if(containerOut.orientation === 'h') { var xaxis = layoutIn.xaxis; - if(xaxis && xaxis.rangeslider && xaxis.rangeslider.visible) { + if(Registry.getComponentMethod('rangeslider', 'isVisible')(xaxis)) { defaultX = 0; defaultXAnchor = 'left'; defaultY = 1.1; diff --git a/src/components/rangeslider/draw.js b/src/components/rangeslider/draw.js index 8bc9eef7673..960d3488a57 100644 --- a/src/components/rangeslider/draw.js +++ b/src/components/rangeslider/draw.js @@ -27,8 +27,13 @@ var setCursor = require('../../lib/setcursor'); var constants = require('./constants'); module.exports = function(gd) { - var fullLayout = gd._fullLayout, - rangeSliderData = makeRangeSliderData(fullLayout); + var fullLayout = gd._fullLayout; + var rangeSliderData = fullLayout._rangeSliderData; + for(var i = 0; i < rangeSliderData.length; i++) { + var opts = rangeSliderData[i][constants.name]; + // fullLayout._uid may not exist when we call makeData + opts._clipId = opts._id + '-' + fullLayout._uid; + } /* * @@ -55,10 +60,6 @@ module.exports = function(gd) { .selectAll('g.' + constants.containerClassName) .data(rangeSliderData, keyFunction); - rangeSliders.enter().append('g') - .classed(constants.containerClassName, true) - .attr('pointer-events', 'all'); - // remove exiting sliders and their corresponding clip paths rangeSliders.exit().each(function(axisOpts) { var opts = axisOpts[constants.name]; @@ -68,12 +69,16 @@ module.exports = function(gd) { // return early if no range slider is visible if(rangeSliderData.length === 0) return; + rangeSliders.enter().append('g') + .classed(constants.containerClassName, true) + .attr('pointer-events', 'all'); + // for all present range sliders rangeSliders.each(function(axisOpts) { - var rangeSlider = d3.select(this), - opts = axisOpts[constants.name], - oppAxisOpts = fullLayout[Axes.id2name(axisOpts.anchor)], - oppAxisRangeOpts = opts[Axes.id2name(axisOpts.anchor)]; + var rangeSlider = d3.select(this); + var opts = axisOpts[constants.name]; + var oppAxisOpts = fullLayout[Axes.id2name(axisOpts.anchor)]; + var oppAxisRangeOpts = opts[Axes.id2name(axisOpts.anchor)]; // update range // Expand slider range to the axis range @@ -104,12 +109,7 @@ module.exports = function(gd) { oppBottom = Math.min(oppBottom, oppAxis.domain[0]); } - opts._id = constants.name + axisOpts._id; - opts._clipId = opts._id + '-' + fullLayout._uid; - opts._width = graphSize.w * (domain[1] - domain[0]); - opts._height = (fullLayout.height - margin.b - margin.t) * opts.thickness; - opts._offsetShift = Math.floor(opts.borderwidth / 2); var x = Math.round(margin.l + (graphSize.w * domain[0])); @@ -177,36 +177,9 @@ module.exports = function(gd) { } }); } - - // update margins - Plots.autoMargin(gd, opts._id, { - x: domain[0], - y: oppBottom, - l: 0, - r: 0, - t: 0, - b: opts._height + margin.b + tickHeight, - pad: constants.extraPad + opts._offsetShift * 2 - }); }); }; -function makeRangeSliderData(fullLayout) { - var axes = Axes.list({ _fullLayout: fullLayout }, 'x', true), - name = constants.name, - out = []; - - if(fullLayout._has('gl2d')) return out; - - for(var i = 0; i < axes.length; i++) { - var ax = axes[i]; - - if(ax[name] && ax[name].visible) out.push(ax); - } - - return out; -} - function setupDragElement(rangeSlider, gd, axisOpts, opts) { var slideBox = rangeSlider.select('rect.' + constants.slideBoxClassName).node(), grabAreaMin = rangeSlider.select('rect.' + constants.grabAreaMinClassName).node(), diff --git a/src/components/rangeslider/helpers.js b/src/components/rangeslider/helpers.js new file mode 100644 index 00000000000..b4188f5239c --- /dev/null +++ b/src/components/rangeslider/helpers.js @@ -0,0 +1,66 @@ +/** +* Copyright 2012-2018, Plotly, Inc. +* All rights reserved. +* +* This source code is licensed under the MIT license found in the +* LICENSE file in the root directory of this source tree. +*/ + +'use strict'; + +var Axes = require('../../plots/cartesian/axes'); +var constants = require('./constants'); +var name = constants.name; + +function isVisible(ax) { + var rangeSlider = ax && ax[name]; + return rangeSlider && rangeSlider.visible; +} +exports.isVisible = isVisible; + +exports.makeData = function(fullLayout) { + var axes = Axes.list({ _fullLayout: fullLayout }, 'x', true); + var margin = fullLayout.margin; + var rangeSliderData = []; + + if(!fullLayout._has('gl2d')) { + for(var i = 0; i < axes.length; i++) { + var ax = axes[i]; + + if(isVisible(ax)) { + rangeSliderData.push(ax); + + var opts = ax[name]; + opts._id = name + ax._id; + opts._height = (fullLayout.height - margin.b - margin.t) * opts.thickness; + opts._offsetShift = Math.floor(opts.borderwidth / 2); + } + } + } + + fullLayout._rangeSliderData = rangeSliderData; +}; + +exports.autoMarginOpts = function(gd, ax) { + var opts = ax[name]; + + var oppBottom = Infinity; + var subplotData = Axes.getSubplots(gd, ax); + for(var j = 0; j < subplotData.length; j++) { + var subplotj = subplotData[j]; + var oppAxis = Axes.getFromId(gd, subplotj.substr(subplotj.indexOf('y'))); + oppBottom = Math.min(oppBottom, oppAxis.domain[0]); + } + + var tickHeight = (ax.side === 'bottom' && ax._boundingBox.height) || 0; + + return { + x: 0, + y: oppBottom, + l: 0, + r: 0, + t: 0, + b: opts._height + gd._fullLayout.margin.b + tickHeight, + pad: constants.extraPad + opts._offsetShift * 2 + }; +}; diff --git a/src/components/rangeslider/index.js b/src/components/rangeslider/index.js index 2983d72c58e..fd3395ff114 100644 --- a/src/components/rangeslider/index.js +++ b/src/components/rangeslider/index.js @@ -11,6 +11,7 @@ var Lib = require('../../lib'); var attrs = require('./attributes'); var oppAxisAttrs = require('./oppaxis_attributes'); +var helpers = require('./helpers'); module.exports = { moduleType: 'component', @@ -29,5 +30,8 @@ module.exports = { layoutAttributes: require('./attributes'), handleDefaults: require('./defaults'), calcAutorange: require('./calc_autorange'), - draw: require('./draw') + draw: require('./draw'), + isVisible: helpers.isVisible, + makeData: helpers.makeData, + autoMarginOpts: helpers.autoMarginOpts }; diff --git a/src/plot_api/plot_api.js b/src/plot_api/plot_api.js index 828797411f2..d95a31ca72e 100644 --- a/src/plot_api/plot_api.js +++ b/src/plot_api/plot_api.js @@ -332,8 +332,7 @@ exports.plot = function(gd, data, layout, config) { return Lib.syncOrAsync([ Registry.getComponentMethod('shapes', 'calcAutorange'), Registry.getComponentMethod('annotations', 'calcAutorange'), - doAutoRangeAndConstraints, - Registry.getComponentMethod('rangeslider', 'calcAutorange') + doAutoRangeAndConstraints ], gd); } @@ -345,6 +344,11 @@ exports.plot = function(gd, data, layout, config) { // store initial ranges *after* enforcing constraints, otherwise // we will never look like we're at the initial ranges if(graphWasEmpty) Axes.saveRangeInitial(gd); + + // this one is different from shapes/annotations calcAutorange + // the others incorporate those components into ax._extremes, + // this one actually sets the ranges in rangesliders. + Registry.getComponentMethod('rangeslider', 'calcAutorange')(gd); } // draw ticks, titles, and calculate axis scaling (._b, ._m) diff --git a/src/plot_api/subroutines.js b/src/plot_api/subroutines.js index 68874a4eae7..3033462e785 100644 --- a/src/plot_api/subroutines.js +++ b/src/plot_api/subroutines.js @@ -55,7 +55,7 @@ function lsInner(gd) { var gs = fullLayout._size; var pad = gs.p; var axList = Axes.list(gd, '', true); - var i, subplot, plotinfo, xa, ya; + var i, subplot, plotinfo, ax, xa, ya; fullLayout._paperdiv.style({ width: (gd._context.responsive && fullLayout.autosize && !gd._context._hasZeroWidth && !gd.layout.width) ? '100%' : fullLayout.width + 'px', @@ -91,10 +91,7 @@ function lsInner(gd) { // some preparation of axis position info for(i = 0; i < axList.length; i++) { - var ax = axList[i]; - - // reset scale in case the margins have changed - ax.setScale(); + ax = axList[i]; var counterAx = ax._anchorAxis; @@ -113,11 +110,6 @@ function lsInner(gd) { ax._mainMirrorPosition = (ax.mirror && counterAx) ? getLinePosition(ax, counterAx, alignmentConstants.OPPOSITE_SIDE[ax.side]) : null; - - // Figure out which subplot to draw ticks, labels, & axis lines on - // do this as a separate loop so we already have all the - // _mainAxis and _anchorAxis links set - ax._mainSubplot = findMainSubplot(ax, fullLayout); } // figure out which backgrounds we need to draw, @@ -358,48 +350,6 @@ function lsInner(gd) { return gd._promises.length && Promise.all(gd._promises); } -function findMainSubplot(ax, fullLayout) { - var subplotList = fullLayout._subplots; - var ids = subplotList.cartesian.concat(subplotList.gl2d || []); - var mockGd = {_fullLayout: fullLayout}; - - var isX = ax._id.charAt(0) === 'x'; - var anchorAx = ax._mainAxis._anchorAxis; - var mainSubplotID = ''; - var nextBestMainSubplotID = ''; - var anchorID = ''; - - // First try the main ID with the anchor - if(anchorAx) { - anchorID = anchorAx._mainAxis._id; - mainSubplotID = isX ? (ax._id + anchorID) : (anchorID + ax._id); - } - - // Then look for a subplot with the counteraxis overlaying the anchor - // If that fails just use the first subplot including this axis - if(!mainSubplotID || !fullLayout._plots[mainSubplotID]) { - mainSubplotID = ''; - - for(var j = 0; j < ids.length; j++) { - var id = ids[j]; - var yIndex = id.indexOf('y'); - var idPart = isX ? id.substr(0, yIndex) : id.substr(yIndex); - var counterPart = isX ? id.substr(yIndex) : id.substr(0, yIndex); - - if(idPart === ax._id) { - if(!nextBestMainSubplotID) nextBestMainSubplotID = id; - var counterAx = Axes.getFromId(mockGd, counterPart); - if(anchorID && counterAx.overlaying === anchorID) { - mainSubplotID = id; - break; - } - } - } - } - - return mainSubplotID || nextBestMainSubplotID; -} - function shouldShowLinesOrTicks(ax, subplot) { return (ax.ticks || ax.showline) && (subplot === ax._mainSubplot || ax.mirror === 'all' || ax.mirror === 'allticks'); @@ -752,6 +702,8 @@ exports.doAutoRangeAndConstraints = function(gd) { for(var i = 0; i < axList.length; i++) { var ax = axList[i]; cleanAxisConstraints(gd, ax); + // in case margins changed, update scale + ax.setScale(); doAutoRange(gd, ax); } diff --git a/src/plots/cartesian/autorange.js b/src/plots/cartesian/autorange.js index 3fe613d5e7d..c77914096f7 100644 --- a/src/plots/cartesian/autorange.js +++ b/src/plots/cartesian/autorange.js @@ -237,10 +237,6 @@ function concatExtremes(gd, ax) { } function doAutoRange(gd, ax) { - if(!ax._length) ax.setScale(); - - var axIn; - if(ax.autorange) { ax.range = getAutoRange(gd, ax); @@ -250,7 +246,7 @@ function doAutoRange(gd, ax) { // doAutoRange will get called on fullLayout, // but we want to report its results back to layout - axIn = ax._input; + var axIn = ax._input; // before we edit _input, store preGUI values var edits = {}; @@ -262,15 +258,16 @@ function doAutoRange(gd, ax) { axIn.autorange = ax.autorange; } - if(ax._anchorAxis && ax._anchorAxis.rangeslider) { - var axeRangeOpts = ax._anchorAxis.rangeslider[ax._name]; + var anchorAx = ax._anchorAxis; + + if(anchorAx && anchorAx.rangeslider) { + var axeRangeOpts = anchorAx.rangeslider[ax._name]; if(axeRangeOpts) { if(axeRangeOpts.rangemode === 'auto') { axeRangeOpts.range = getAutoRange(gd, ax); } } - axIn = ax._anchorAxis._input; - axIn.rangeslider[ax._name] = Lib.extendFlat({}, axeRangeOpts); + anchorAx._input.rangeslider[ax._name] = Lib.extendFlat({}, axeRangeOpts); } } diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 00b4ca78dbf..0be3e7972ba 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1592,7 +1592,7 @@ axes.draw = function(gd, arg, opts) { var axList = (!arg || arg === 'redraw') ? axes.listIds(gd) : arg; - Lib.syncOrAsync(axList.map(function(axId) { + return Lib.syncOrAsync(axList.map(function(axId) { return function() { if(!axId) return; @@ -1628,12 +1628,20 @@ axes.drawOne = function(gd, ax, opts) { var counterLetter = axes.counterLetter(axId); var mainSubplot = ax._mainSubplot; var mainLinePosition = ax._mainLinePosition; + var mainMirrorPosition = ax._mainMirrorPosition; var mainPlotinfo = fullLayout._plots[mainSubplot]; var mainAxLayer = mainPlotinfo[axLetter + 'axislayer']; var subplotsWithAx = axes.getSubplots(gd, ax); var vals = ax._vals = axes.calcTicks(ax); + // Add a couple of axis properties that should cause us to recreate + // elements. Used in d3 data function. + var axInfo = [ax.mirror, mainLinePosition, mainMirrorPosition].join('_'); + for(i = 0; i < vals.length; i++) { + vals[i].axInfo = axInfo; + } + if(!ax.visible) return; // stash selections to avoid DOM queries e.g. @@ -1679,6 +1687,7 @@ axes.drawOne = function(gd, ax, opts) { axes.drawGrid(gd, ax, { vals: gridVals, + counterAxis: counterAxis, layer: plotinfo.gridlayer.select('.' + axId), path: gridPath, transFn: transFn @@ -1698,7 +1707,7 @@ axes.drawOne = function(gd, ax, opts) { if(ax.ticks) { var mainTickPath = axes.makeTickPath(ax, mainLinePosition, tickSigns[2]); if(ax._anchorAxis && ax.mirror && ax.mirror !== true) { - mainTickPath += axes.makeTickPath(ax, ax._mainMirrorPosition, tickSigns[3]); + mainTickPath += axes.makeTickPath(ax, mainMirrorPosition, tickSigns[3]); } axes.drawTicks(gd, ax, { @@ -1866,38 +1875,42 @@ axes.drawOne = function(gd, ax, opts) { } } + var hasRangeSlider = Registry.getComponentMethod('rangeslider', 'isVisible')(ax); + function doAutoMargins() { - var pushKey = ax._name + '.automargin'; + var push, rangeSliderPush; - if(!ax.automargin) { - Plots.autoMargin(gd, pushKey); - return; + if(hasRangeSlider) { + rangeSliderPush = Registry.getComponentMethod('rangeslider', 'autoMarginOpts')(gd, ax); } + Plots.autoMargin(gd, rangeSliderAutoMarginID(ax), rangeSliderPush); var s = ax.side.charAt(0); - var push = {x: 0, y: 0, r: 0, l: 0, t: 0, b: 0}; + if(ax.automargin && (!hasRangeSlider || s !== 'b')) { + push = {x: 0, y: 0, r: 0, l: 0, t: 0, b: 0}; - if(axLetter === 'x') { - push.y = (ax.anchor === 'free' ? ax.position : - ax._anchorAxis.domain[s === 't' ? 1 : 0]); - push[s] += ax._boundingBox.height; - } else { - push.x = (ax.anchor === 'free' ? ax.position : - ax._anchorAxis.domain[s === 'r' ? 1 : 0]); - push[s] += ax._boundingBox.width; - } + if(axLetter === 'x') { + push.y = (ax.anchor === 'free' ? ax.position : + ax._anchorAxis.domain[s === 't' ? 1 : 0]); + push[s] += ax._boundingBox.height; + } else { + push.x = (ax.anchor === 'free' ? ax.position : + ax._anchorAxis.domain[s === 'r' ? 1 : 0]); + push[s] += ax._boundingBox.width; + } - if(ax.title.text !== fullLayout._dfltTitle[axLetter]) { - push[s] += ax.title.font.size; + if(ax.title.text !== fullLayout._dfltTitle[axLetter]) { + push[s] += ax.title.font.size; + } } - Plots.autoMargin(gd, pushKey, push); + Plots.autoMargin(gd, axAutoMarginID(ax), push); } seq.push(calcBoundingBox, doAutoMargins); if(!opts.skipTitle && - !((ax.rangeslider || {}).visible && ax._boundingBox && ax.side === 'bottom') + !(hasRangeSlider && ax._boundingBox && ax.side === 'bottom') ) { seq.push(function() { return drawTitle(gd, ax); }); } @@ -2142,10 +2155,8 @@ axes.makeLabelFns = function(ax, shift, angle) { return out; }; -function makeDataFn(ax) { - return function(d) { - return [d.text, d.x, ax.mirror, d.font, d.fontSize, d.fontColor].join('_'); - }; +function tickDataFn(d) { + return [d.text, d.x, d.axInfo, d.font, d.fontSize, d.fontColor].join('_'); } /** @@ -2170,7 +2181,7 @@ axes.drawTicks = function(gd, ax, opts) { var cls = ax._id + 'tick'; var ticks = opts.layer.selectAll('path.' + cls) - .data(ax.ticks ? opts.vals : [], makeDataFn(ax)); + .data(ax.ticks ? opts.vals : [], tickDataFn); ticks.exit().remove(); @@ -2200,6 +2211,8 @@ axes.drawTicks = function(gd, ax, opts) { * @param {object} opts * - {array of object} vals (calcTicks output-like) * - {d3 selection} layer + * - {object} counterAxis (full axis object corresponding to counter axis) + * optional - only required if this axis supports zero lines * - {string or fn} path * - {fn} transFn * - {boolean} crisp (set to false to unset crisp-edge SVG rendering) @@ -2208,26 +2221,39 @@ axes.drawGrid = function(gd, ax, opts) { opts = opts || {}; var cls = ax._id + 'grid'; + var vals = opts.vals; + var counterAx = opts.counterAxis; + if(ax.showgrid === false) { + vals = []; + } + else if(counterAx && axes.shouldShowZeroLine(gd, ax, counterAx)) { + var isArrayMode = ax.tickmode === 'array'; + for(var i = 0; i < vals.length; i++) { + var xi = vals[i].x; + if(isArrayMode ? !xi : (Math.abs(xi) < ax.dtick / 100)) { + vals = vals.slice(0, i).concat(vals.slice(i + 1)); + // In array mode you can in principle have multiple + // ticks at 0, so test them all. Otherwise once we found + // one we can stop. + if(isArrayMode) i--; + else break; + } + } + } var grid = opts.layer.selectAll('path.' + cls) - .data((ax.showgrid === false) ? [] : opts.vals, makeDataFn(ax)); + .data(vals, tickDataFn); grid.exit().remove(); grid.enter().append('path') .classed(cls, 1) - .classed('crisp', opts.crisp !== false) - .attr('d', opts.path) - .each(function(d) { - if(ax.zeroline && (ax.type === 'linear' || ax.type === '-') && - Math.abs(d.x) < ax.dtick / 100) { - d3.select(this).remove(); - } - }); + .classed('crisp', opts.crisp !== false); ax._gw = Drawing.crispRound(gd, ax.gridwidth, 1); grid.attr('transform', opts.transFn) + .attr('d', opts.path) .call(Color.stroke, ax.gridcolor || '#ddd') .style('stroke-width', ax._gw + 'px'); @@ -2266,7 +2292,6 @@ axes.drawZeroLine = function(gd, ax, opts) { .classed(cls, 1) .classed('zl', 1) .classed('crisp', opts.crisp !== false) - .attr('d', opts.path) .each(function() { // use the fact that only one element can enter to trigger a sort. // If several zerolines enter at the same time we will sort once per, @@ -2277,6 +2302,7 @@ axes.drawZeroLine = function(gd, ax, opts) { }); zl.attr('transform', opts.transFn) + .attr('d', opts.path) .call(Color.stroke, ax.zerolinecolor || Color.defaultLine) .style('stroke-width', Drawing.crispRound(gd, ax.zerolinewidth, ax._gw || 1) + 'px'); }; @@ -2316,7 +2342,7 @@ axes.drawLabels = function(gd, ax, opts) { var lastAngle = (ax._tickAngles || {})[cls]; var tickLabels = opts.layer.selectAll('g.' + cls) - .data(ax.showticklabels ? vals : [], makeDataFn(ax)); + .data(ax.showticklabels ? vals : [], tickDataFn); var labelsReady = []; @@ -2533,7 +2559,7 @@ function drawDividers(gd, ax, opts) { var vals = opts.vals; var dividers = opts.layer.selectAll('path.' + cls) - .data(vals, makeDataFn(ax)); + .data(vals, tickDataFn); dividers.exit().remove(); @@ -2738,14 +2764,17 @@ axes.allowAutoMargin = function(gd) { for(var i = 0; i < axList.length; i++) { var ax = axList[i]; if(ax.automargin) { - Plots.allowAutoMargin(gd, ax._name + '.automargin'); + Plots.allowAutoMargin(gd, axAutoMarginID(ax)); } - if(ax.rangeslider && ax.rangeslider.visible) { - Plots.allowAutoMargin(gd, 'rangeslider' + ax._id); + if(Registry.getComponentMethod('rangeslider', 'isVisible')(ax)) { + Plots.allowAutoMargin(gd, rangeSliderAutoMarginID(ax)); } } }; +function axAutoMarginID(ax) { return ax._id + '.automargin'; } +function rangeSliderAutoMarginID(ax) { return ax._id + '.rangeslider'; } + // swap all the presentation attributes of the axes showing these traces axes.swap = function(gd, traces) { var axGroups = makeAxisGroups(gd, traces); diff --git a/src/plots/cartesian/constraints.js b/src/plots/cartesian/constraints.js index 70859a2ad0b..36c27ec08b3 100644 --- a/src/plots/cartesian/constraints.js +++ b/src/plots/cartesian/constraints.js @@ -139,7 +139,6 @@ exports.enforce = function enforceAxisConstraints(gd) { var getPad = makePadFn(ax); updateDomain(ax, factor); - ax.setScale(); var m = Math.abs(ax._m); var extremes = concatExtremes(gd, ax); var minArray = extremes.min; @@ -206,4 +205,5 @@ function updateDomain(ax, factor) { center + (inputDomain[0] - center) / factor, center + (inputDomain[1] - center) / factor ]; + ax.setScale(); } diff --git a/src/plots/cartesian/layout_defaults.js b/src/plots/cartesian/layout_defaults.js index e0e6e18dc08..f9c7bec1f84 100644 --- a/src/plots/cartesian/layout_defaults.js +++ b/src/plots/cartesian/layout_defaults.js @@ -239,11 +239,7 @@ module.exports = function supplyLayoutDefaults(layoutIn, layoutOut, fullData) { var anchoredAxis = layoutOut[id2name(axLayoutOut.anchor)]; - var fixedRangeDflt = ( - anchoredAxis && - anchoredAxis.rangeslider && - anchoredAxis.rangeslider.visible - ); + var fixedRangeDflt = getComponentMethod('rangeslider', 'isVisible')(anchoredAxis); coerce('fixedrange', fixedRangeDflt); } diff --git a/src/plots/plots.js b/src/plots/plots.js index b8ce8d5fe6c..5642342266d 100644 --- a/src/plots/plots.js +++ b/src/plots/plots.js @@ -500,6 +500,9 @@ plots.supplyDefaults = function(gd, opts) { // set up containers for margin calculations initMargins(newFullLayout); + // collect and do some initial calculations for rangesliders + Registry.getComponentMethod('rangeslider', 'makeData')(newFullLayout); + // update object references in calcdata if(!skipUpdateCalc && oldCalcdata.length === newFullData.length) { plots.supplyDefaultsUpdateCalc(oldCalcdata, newFullData); @@ -835,8 +838,9 @@ plots.linkSubplots = function(newFullData, newFullLayout, oldFullData, oldFullLa // while we're at it, link overlaying axes to their main axes and // anchored axes to the axes they're anchored to var axList = axisIDs.list(mockGd, null, true); + var ax; for(i = 0; i < axList.length; i++) { - var ax = axList[i]; + ax = axList[i]; var mainAx = null; if(ax.overlaying) { @@ -864,8 +868,57 @@ plots.linkSubplots = function(newFullData, newFullLayout, oldFullData, oldFullLa null : axisIDs.getFromId(mockGd, ax.anchor); } + + // finally, we can find the main subplot for each axis + // (on which the ticks & labels are drawn) + for(i = 0; i < axList.length; i++) { + ax = axList[i]; + ax._mainSubplot = findMainSubplot(ax, newFullLayout); + } }; +function findMainSubplot(ax, fullLayout) { + var subplotList = fullLayout._subplots; + var ids = subplotList.cartesian.concat(subplotList.gl2d || []); + var mockGd = {_fullLayout: fullLayout}; + + var isX = ax._id.charAt(0) === 'x'; + var anchorAx = ax._mainAxis._anchorAxis; + var mainSubplotID = ''; + var nextBestMainSubplotID = ''; + var anchorID = ''; + + // First try the main ID with the anchor + if(anchorAx) { + anchorID = anchorAx._mainAxis._id; + mainSubplotID = isX ? (ax._id + anchorID) : (anchorID + ax._id); + } + + // Then look for a subplot with the counteraxis overlaying the anchor + // If that fails just use the first subplot including this axis + if(!mainSubplotID || !fullLayout._plots[mainSubplotID]) { + mainSubplotID = ''; + + for(var j = 0; j < ids.length; j++) { + var id = ids[j]; + var yIndex = id.indexOf('y'); + var idPart = isX ? id.substr(0, yIndex) : id.substr(yIndex); + var counterPart = isX ? id.substr(yIndex) : id.substr(0, yIndex); + + if(idPart === ax._id) { + if(!nextBestMainSubplotID) nextBestMainSubplotID = id; + var counterAx = axisIDs.getFromId(mockGd, counterPart); + if(anchorID && counterAx.overlaying === anchorID) { + mainSubplotID = id; + break; + } + } + } + } + + return mainSubplotID || nextBestMainSubplotID; +} + // This function clears any trace attributes with valType: color and // no set dflt filed in the plot schema. This is needed because groupby (which // is the only transform for which this currently applies) supplies parent diff --git a/test/jasmine/tests/range_slider_test.js b/test/jasmine/tests/range_slider_test.js index 6ba00809e06..a6246a251f4 100644 --- a/test/jasmine/tests/range_slider_test.js +++ b/test/jasmine/tests/range_slider_test.js @@ -28,9 +28,7 @@ function getRangeSliderChild(index) { } function countRangeSliderClipPaths() { - return d3.selectAll('defs').selectAll('*').filter(function() { - return this.id.indexOf('rangeslider') !== -1; - }).size(); + return document.querySelectorAll('defs [id*=rangeslider]').length; } function testTranslate1D(node, val) { From b2a4b769cb73494d060fedd498357ef5f916f5ab Mon Sep 17 00:00:00 2001 From: alexcjohnson Date: Mon, 10 Dec 2018 22:14:58 -0500 Subject: [PATCH 47/54] fixed range_slider_rangemode baseline --- .../baselines/range_slider_rangemode.png | Bin 34627 -> 34659 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/test/image/baselines/range_slider_rangemode.png b/test/image/baselines/range_slider_rangemode.png index 0915d37b06d845b1dbea9c5e0c210462abf69f48..40b03a5eb77037bc77598f025194c9028e817e74 100644 GIT binary patch literal 34659 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

6I1?1=Cx-JtrN+gOY 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

B0&0~jj-XsLxfc)=OY4XWJgFQ$qK8{FGGPI}p{ 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 From 177e6f0fc3cf9368fe36e79a03302e7bf8acf4ad Mon Sep 17 00:00:00 2001 From: alexcjohnson Date: Wed, 28 Nov 2018 18:52:22 -0500 Subject: [PATCH 48/54] use _replotting in cartesian dragbox --- src/plots/cartesian/dragbox.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/plots/cartesian/dragbox.js b/src/plots/cartesian/dragbox.js index 6cc75dc0443..8b91a5dab5b 100644 --- a/src/plots/cartesian/dragbox.js +++ b/src/plots/cartesian/dragbox.js @@ -516,6 +516,9 @@ function makeDragBox(gd, plotinfo, x, y, w, h, ns, ew) { return; } + // prevent axis drawing from monkeying with margins until we're done + gd._fullLayout._replotting = true; + if(xActive === 'ew' || yActive === 'ns') { if(xActive) dragAxList(xaxes, dx); if(yActive) dragAxList(yaxes, dy); @@ -726,7 +729,10 @@ function makeDragBox(gd, plotinfo, x, y, w, h, ns, ew) { // accumulated MathJax promises - wait for them before we relayout. Lib.syncOrAsync([ Plots.previousPromises, - function() { Registry.call('_guiRelayout', gd, updates); } + function() { + gd._fullLayout._replotting = false; + Registry.call('_guiRelayout', gd, updates); + } ], gd); } From da30f160b510c88c4c884d901fb37704df52c7e4 Mon Sep 17 00:00:00 2001 From: alexcjohnson Date: Tue, 11 Dec 2018 12:31:42 -0500 Subject: [PATCH 49/54] remove setScale categories fallback and update heatmap test comment --- src/plots/cartesian/set_convert.js | 5 ----- test/jasmine/tests/heatmap_test.js | 6 ++++-- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/src/plots/cartesian/set_convert.js b/src/plots/cartesian/set_convert.js index b07d5d02b11..57118325b8d 100644 --- a/src/plots/cartesian/set_convert.js +++ b/src/plots/cartesian/set_convert.js @@ -419,11 +419,6 @@ module.exports = function setConvert(ax, fullLayout) { ax.setScale = function(usePrivateRange) { var gs = fullLayout._size; - // TODO cleaner way to handle this case - if(!ax._categories) ax._categories = []; - // Add a map to optimize the performance of category collection - if(!ax._categoriesMap) ax._categoriesMap = {}; - // make sure we have a domain (pull it in from the axis // this one is overlaying if necessary) if(ax.overlaying) { diff --git a/test/jasmine/tests/heatmap_test.js b/test/jasmine/tests/heatmap_test.js index 5c4f7f9fc4e..7152e38429d 100644 --- a/test/jasmine/tests/heatmap_test.js +++ b/test/jasmine/tests/heatmap_test.js @@ -298,8 +298,10 @@ describe('heatmap calc', function() { fullTrace._extremes = {}; - // clearCalc used to be (oddly enough) part of supplyDefaults. - // Now it's in doCalcData, which we don't include in this partial pathway. + // we used to call ax.setScale during supplyDefaults, and this had a + // fallback to provide _categories and _categoriesMap. Now neither of + // those is true... anyway the right way to do this though is + // ax.clearCalc. fullLayout.xaxis.clearCalc(); fullLayout.yaxis.clearCalc(); From 68993c313a23552c0202fb6b0aed5ba01ca72f0a Mon Sep 17 00:00:00 2001 From: alexcjohnson Date: Tue, 11 Dec 2018 13:34:10 -0500 Subject: [PATCH 50/54] minor :palm_tree: for findMainSubplot --- src/plots/plots.js | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/plots/plots.js b/src/plots/plots.js index 5642342266d..2ed4c4fe740 100644 --- a/src/plots/plots.js +++ b/src/plots/plots.js @@ -873,13 +873,11 @@ plots.linkSubplots = function(newFullData, newFullLayout, oldFullData, oldFullLa // (on which the ticks & labels are drawn) for(i = 0; i < axList.length; i++) { ax = axList[i]; - ax._mainSubplot = findMainSubplot(ax, newFullLayout); + ax._mainSubplot = findMainSubplot(ax, newFullLayout, ids); } }; -function findMainSubplot(ax, fullLayout) { - var subplotList = fullLayout._subplots; - var ids = subplotList.cartesian.concat(subplotList.gl2d || []); +function findMainSubplot(ax, fullLayout, ids) { var mockGd = {_fullLayout: fullLayout}; var isX = ax._id.charAt(0) === 'x'; From f55e7695209a235ced67c27d39ef4055782b93c4 Mon Sep 17 00:00:00 2001 From: alexcjohnson Date: Tue, 11 Dec 2018 14:56:18 -0500 Subject: [PATCH 51/54] pre-collate counteraxes and subplot ids for each axis this means Axes.getSubplots and Axes.findSubplotsWithAxis are essentially unused internally, but we have some outside callers using getSubplots --- src/components/rangeslider/draw.js | 20 ++++++--------- src/components/rangeslider/helpers.js | 13 +++++----- src/plots/cartesian/axes.js | 7 +++++- src/plots/cartesian/layout_defaults.js | 2 ++ src/plots/plots.js | 34 ++++++++++++++------------ 5 files changed, 41 insertions(+), 35 deletions(-) diff --git a/src/components/rangeslider/draw.js b/src/components/rangeslider/draw.js index 960d3488a57..1a7fe176df6 100644 --- a/src/components/rangeslider/draw.js +++ b/src/components/rangeslider/draw.js @@ -19,7 +19,7 @@ var Color = require('../color'); var Titles = require('../titles'); var Cartesian = require('../../plots/cartesian'); -var Axes = require('../../plots/cartesian/axes'); +var axisIDs = require('../../plots/cartesian/axis_ids'); var dragElement = require('../dragelement'); var setCursor = require('../../lib/setcursor'); @@ -77,8 +77,8 @@ module.exports = function(gd) { rangeSliders.each(function(axisOpts) { var rangeSlider = d3.select(this); var opts = axisOpts[constants.name]; - var oppAxisOpts = fullLayout[Axes.id2name(axisOpts.anchor)]; - var oppAxisRangeOpts = opts[Axes.id2name(axisOpts.anchor)]; + var oppAxisOpts = fullLayout[axisIDs.id2name(axisOpts.anchor)]; + var oppAxisRangeOpts = opts[axisIDs.id2name(axisOpts.anchor)]; // update range // Expand slider range to the axis range @@ -102,12 +102,7 @@ module.exports = function(gd) { var domain = axisOpts.domain; var tickHeight = (axisOpts._boundingBox || {}).height || 0; - var oppBottom = Infinity; - var subplotData = Axes.getSubplots(gd, axisOpts); - for(var i = 0; i < subplotData.length; i++) { - var oppAxis = Axes.getFromId(gd, subplotData[i].substr(subplotData[i].indexOf('y'))); - oppBottom = Math.min(oppBottom, oppAxis.domain[0]); - } + var oppBottom = opts._oppBottom; opts._width = graphSize.w * (domain[1] - domain[0]); @@ -366,11 +361,10 @@ function addClipPath(rangeSlider, gd, axisOpts, opts) { } function drawRangePlot(rangeSlider, gd, axisOpts, opts) { - var subplotData = Axes.getSubplots(gd, axisOpts), - calcData = gd.calcdata; + var calcData = gd.calcdata; var rangePlots = rangeSlider.selectAll('g.' + constants.rangePlotClassName) - .data(subplotData, Lib.identity); + .data(axisOpts._subplotsWith, Lib.identity); rangePlots.enter().append('g') .attr('class', function(id) { return constants.rangePlotClassName + ' ' + id; }) @@ -386,7 +380,7 @@ function drawRangePlot(rangeSlider, gd, axisOpts, opts) { var plotgroup = d3.select(this), isMainPlot = (i === 0); - var oppAxisOpts = Axes.getFromId(gd, id, 'y'), + var oppAxisOpts = axisIDs.getFromId(gd, id, 'y'), oppAxisName = oppAxisOpts._name, oppAxisRangeOpts = opts[oppAxisName]; diff --git a/src/components/rangeslider/helpers.js b/src/components/rangeslider/helpers.js index b4188f5239c..6009d0d51a1 100644 --- a/src/components/rangeslider/helpers.js +++ b/src/components/rangeslider/helpers.js @@ -8,7 +8,7 @@ 'use strict'; -var Axes = require('../../plots/cartesian/axes'); +var axisIDs = require('../../plots/cartesian/axis_ids'); var constants = require('./constants'); var name = constants.name; @@ -19,7 +19,7 @@ function isVisible(ax) { exports.isVisible = isVisible; exports.makeData = function(fullLayout) { - var axes = Axes.list({ _fullLayout: fullLayout }, 'x', true); + var axes = axisIDs.list({ _fullLayout: fullLayout }, 'x', true); var margin = fullLayout.margin; var rangeSliderData = []; @@ -45,12 +45,13 @@ exports.autoMarginOpts = function(gd, ax) { var opts = ax[name]; var oppBottom = Infinity; - var subplotData = Axes.getSubplots(gd, ax); - for(var j = 0; j < subplotData.length; j++) { - var subplotj = subplotData[j]; - var oppAxis = Axes.getFromId(gd, subplotj.substr(subplotj.indexOf('y'))); + var counterAxes = ax._counterAxes; + for(var j = 0; j < counterAxes.length; j++) { + var counterId = counterAxes[j]; + var oppAxis = axisIDs.getFromId(gd, counterId); oppBottom = Math.min(oppBottom, oppAxis.domain[0]); } + opts._oppBottom = oppBottom; var tickHeight = (ax.side === 'bottom' && ax._boundingBox.height) || 0; diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 0be3e7972ba..f413741bc49 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1467,6 +1467,9 @@ axes.getTickFormat = function(ax) { // as an array of items like 'xy', 'x2y', 'x2y2'... // sorted by x (x,x2,x3...) then y // optionally restrict to only subplots containing axis object ax +// +// NOTE: this is currently only used OUTSIDE plotly.js (toolpanel, webapp) +// ideally we get rid of it there (or just copy this there) and remove it here axes.getSubplots = function(gd, ax) { var subplotObj = gd._fullLayout._subplots; var allSubplots = subplotObj.cartesian.concat(subplotObj.gl2d || []); @@ -1485,6 +1488,8 @@ axes.getSubplots = function(gd, ax) { }; // find all subplots with axis 'ax' +// NOTE: this is only used in axes.getSubplots (only used outside plotly.js) and +// gl2d/convert (where it restricts axis subplots to only those with gl2d) axes.findSubplotsWithAxis = function(subplots, ax) { var axMatch = new RegExp( (ax._id.charAt(0) === 'x') ? ('^' + ax._id + 'y') : (ax._id + '$') @@ -1631,7 +1636,7 @@ axes.drawOne = function(gd, ax, opts) { var mainMirrorPosition = ax._mainMirrorPosition; var mainPlotinfo = fullLayout._plots[mainSubplot]; var mainAxLayer = mainPlotinfo[axLetter + 'axislayer']; - var subplotsWithAx = axes.getSubplots(gd, ax); + var subplotsWithAx = ax._subplotsWith; var vals = ax._vals = axes.calcTicks(ax); diff --git a/src/plots/cartesian/layout_defaults.js b/src/plots/cartesian/layout_defaults.js index f9c7bec1f84..6bf2f652fc6 100644 --- a/src/plots/cartesian/layout_defaults.js +++ b/src/plots/cartesian/layout_defaults.js @@ -156,6 +156,8 @@ module.exports = function supplyLayoutDefaults(layoutIn, layoutOut, fullData) { axLayoutOut._traceIndices = traces.map(function(t) { return t._expandedIndex; }); axLayoutOut._annIndices = []; axLayoutOut._shapeIndices = []; + axLayoutOut._subplotsWith = []; + axLayoutOut._counterAxes = []; // set up some private properties axLayoutOut._name = axLayoutOut._attr = axName; diff --git a/src/plots/plots.js b/src/plots/plots.js index 2ed4c4fe740..aa52e9e05ef 100644 --- a/src/plots/plots.js +++ b/src/plots/plots.js @@ -811,6 +811,12 @@ plots.linkSubplots = function(newFullData, newFullLayout, oldFullData, oldFullLa plotinfo.id = id; } + // add these axis ids to each others' subplot lists + xaxis._counterAxes.push(yaxis._id); + yaxis._counterAxes.push(xaxis._id); + xaxis._subplotsWith.push(id); + yaxis._subplotsWith.push(id); + // update x and y axis layout object refs plotinfo.xaxis = xaxis; plotinfo.yaxis = yaxis; @@ -873,11 +879,13 @@ plots.linkSubplots = function(newFullData, newFullLayout, oldFullData, oldFullLa // (on which the ticks & labels are drawn) for(i = 0; i < axList.length; i++) { ax = axList[i]; - ax._mainSubplot = findMainSubplot(ax, newFullLayout, ids); + ax._counterAxes.sort(axisIDs.idSort); + ax._subplotsWith.sort(Lib.subplotSort); + ax._mainSubplot = findMainSubplot(ax, newFullLayout); } }; -function findMainSubplot(ax, fullLayout, ids) { +function findMainSubplot(ax, fullLayout) { var mockGd = {_fullLayout: fullLayout}; var isX = ax._id.charAt(0) === 'x'; @@ -897,19 +905,15 @@ function findMainSubplot(ax, fullLayout, ids) { if(!mainSubplotID || !fullLayout._plots[mainSubplotID]) { mainSubplotID = ''; - for(var j = 0; j < ids.length; j++) { - var id = ids[j]; - var yIndex = id.indexOf('y'); - var idPart = isX ? id.substr(0, yIndex) : id.substr(yIndex); - var counterPart = isX ? id.substr(yIndex) : id.substr(0, yIndex); - - if(idPart === ax._id) { - if(!nextBestMainSubplotID) nextBestMainSubplotID = id; - var counterAx = axisIDs.getFromId(mockGd, counterPart); - if(anchorID && counterAx.overlaying === anchorID) { - mainSubplotID = id; - break; - } + var counterIDs = ax._counterAxes; + for(var j = 0; j < counterIDs.length; j++) { + var counterPart = counterIDs[j]; + var id = isX ? (ax._id + counterPart) : (counterPart + ax._id); + if(!nextBestMainSubplotID) nextBestMainSubplotID = id; + var counterAx = axisIDs.getFromId(mockGd, counterPart); + if(anchorID && counterAx.overlaying === anchorID) { + mainSubplotID = id; + break; } } } From 5da38513fc5224eaa29b7bf101d921732fe64c8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 11 Dec 2018 10:44:23 -0500 Subject: [PATCH 52/54] do not draw ticks above dividers --- src/plots/cartesian/axes.js | 26 ++++++++++++++++-- .../image/baselines/heatmap_multicategory.png | Bin 114829 -> 114781 bytes test/image/baselines/multicategory-y.png | Bin 37704 -> 37676 bytes test/image/baselines/multicategory.png | Bin 24923 -> 24900 bytes .../baselines/multicategory_histograms.png | Bin 48899 -> 48849 bytes 5 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index f413741bc49..9adbe25fb55 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1671,6 +1671,7 @@ axes.drawOne = function(gd, ax, opts) { } var gridVals = ax._gridVals = valsClipped; + var dividerVals = getDividerVals(ax, vals); if(!fullLayout._hasOnlyLargeSploms) { // keep track of which subplots (by main conteraxis) we've already @@ -1711,14 +1712,33 @@ axes.drawOne = function(gd, ax, opts) { if(ax.ticks) { var mainTickPath = axes.makeTickPath(ax, mainLinePosition, tickSigns[2]); + var mirrorTickPath; + var fullTickPath; if(ax._anchorAxis && ax.mirror && ax.mirror !== true) { - mainTickPath += axes.makeTickPath(ax, mainMirrorPosition, tickSigns[3]); + mirrorTickPath = axes.makeTickPath(ax, mainMirrorPosition, tickSigns[3]); + fullTickPath = mainTickPath + mirrorTickPath; + } else { + mirrorTickPath = ''; + fullTickPath = mainTickPath; + } + + var tickPath; + if(ax.showdividers && ax.ticks === 'outside' && ax.tickson === 'boundaries') { + var dividerLookup = {}; + for(i = 0; i < dividerVals.length; i++) { + dividerLookup[dividerVals[i].x] = 1; + } + tickPath = function(d) { + return dividerLookup[d.x] ? mirrorTickPath : fullTickPath; + }; + } else { + tickPath = fullTickPath; } axes.drawTicks(gd, ax, { vals: tickVals, layer: mainAxLayer, - path: mainTickPath, + path: tickPath, transFn: transFn }); @@ -1785,7 +1805,7 @@ axes.drawOne = function(gd, ax, opts) { labelLength += getLabelLevelSpan(ax, axId + 'tick2'); return drawDividers(gd, ax, { - vals: getDividerVals(ax, vals), + vals: dividerVals, layer: mainAxLayer, path: axes.makeTickPath(ax, mainLinePosition, tickSigns[2], labelLength), transFn: transFn diff --git a/test/image/baselines/heatmap_multicategory.png b/test/image/baselines/heatmap_multicategory.png index 4146cc7508b0353c9b9c004a96bb20f34aa5fcbd..fd9d8ec5c9320e3d95324b4a73d0fc758554a7b2 100644 GIT binary patch delta 110331 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 delta 110418 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%0A15tJd^o@~9s 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 DTL684 diff --git a/test/image/baselines/multicategory-y.png b/test/image/baselines/multicategory-y.png index 7aa70dc05391f799d377afee948883d97e71c6dc..f8986f8a8e67a1e131e2b85d7b67ff5c4eca44cd 100644 GIT binary patch literal 37676 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 P_@kp?usLTFE#UtE1RU@+ literal 37704 zcmeEu_ghn2*DWPT01F)vM2hqP(nPBC-b)BQAVma0n$k-U3sqW>B27XUB8Whw1x1kF z1W}swCLmS%T{-7{-}~MBo#*}m_xXMhjqL2b_S$RBIp!E+?&pU38W$+9P!bUlUC`20 zH6|h=L4ZFE&~xB_#H;a|L`3XFTB=H>{vLj;uGe~x1IuXi=nXgUhKgUC2ME`Zu;QKH-MJ$XIbL+23Ae;}}^tu1s zMEL*QG+~ne=SgG#XL%F0*Z=J4|BnJ0d3(#*$<&z^9FF!~9qGZ33>3^zf5Z8enHC!= zX{YcRWwi%<79}CS$ok@{>_bhAb}FkIa}U38gw2PC=^90! zCS-KTb6xm>2&DAo6u!*INHvQ7x9v2rb`pm?X(*cP89n|ydi4$w-dkQdvGx)^IxD@) zfE^*MQRIJL1smNSSM(CET?{V3ZCV#SjDVDBzNB5?fe6|wo6SApM5w8^#i?Cyp|z(` zYTLdE5zKx!Yr=$LxYql-lnfuuwEXAmYzA_|cSuhx_|F3^9i1+6`;l^str08FFF3!| zg5ZO#!Ey`nfur4K($ViVZca0wo^SO?O?8}}9AV&ZEEjrqeEQ@^$E%#W7!TTSpK^FM z{8sN3PmtSs79jrKywdhJ>BejZHHEAtl9D)o)Ot!K`F`O}(|mgIs_x43v(x?Nt)HYS^pixS43dxxA-r zN#Kqa9}G1-mzwl{y|X-|aYgdpbpiXSko{NVkETNEzx8HH^>qiwu}BH0Aw&NBd@2^S z=gutd9GfCw*7@B3PaX{v9ciSBWj(K*qNj|_hb(=Yg`)2ezwOUbr7oWeJ?iPc(Rg~e zdJrfVdhE|{QW$Ho_hB(RsM{F%;o&duiJ~uFvJcnzaG#1#z6NQ;Ugj{keey2-L}m^9 z5%!|s84*AQ__yKzIC1O-z{h zVu03n;{ecyCc*J zmgtqAf#4zbY}rSiyRg-$_A)zLSmnuiQI=`9;bQv;J~gnB;|X*A-!`(B5f)x)`zl#X z$wUa^4e!a49%{JoXE7%%gZ@1D*|f7ZR^1|pkg-j;efkF*fOYPE$pNruI*q8Yr0VTr z>hdLKOA#>T@x$9BG_XDuWDPMCZI-1^zmS2HCXP~9RU^VjQ`)(+sbd{Je(f@*fr%{t zsAR!c^$oAm(!eUYrkf9GVB~kA|7k7!6(ka4h*0y>;fnvT7Fi)(B&yMhSnF$~Q1mKI zbVCRfKG$s>N`m*6mT7a#Tt#76CKKfMzRmc>7s+w7oJaG1qpGCGd*9$Qx=DeLrp>*R zz=en>`=sn+%?RtU!Fc|OW0SXxmtMF`)rfiK53uZvl60#KbvZPGyX6-YP6FXa@o*w& zTC`tS*)YIT1?AZ^MC7~cO^Wm>lvA8J{~xpbLXawA7YjnB${#YbxPQ9a3JOMVCyrt^ zrU+yJYq;T8F2u!i+?_le2qO~TH7`il+i=9)cpX%fwFR`8l<-6$9G-Olv~1cL@X8f1 z$WS6DHB5tqX8im=K6oW8VMxBkU`TmLNCxVkhGa`c7}B$N1`xv;sqbF|3)L{+ofgHw zt=P_{fn}w77Pa8dkLXB^B9cKs2*3Tu@d*Akp1uJv9&*yif4mTsaG?hm!M#gg29Nc> zFVyF?NDgyG)Pg@DG7&5P!)nO#rzD&NNnuDB$qQ4g{^6Rq^hU!rtNT?wfs4c^Tf!ht z6%-aSE_!8q#VR^G7lOsD(U~f^i0Hbj??tgT@nKZX66d=-!)R2nIC;Fx%Y3#wx-hA5 z;fiLFiGk3dPxiR)#|zn}t7+O`&2p8XzSdYtkz1)J|5aAx)x{kng-hBh6Pw9D;78IUB zbTx<-?+s&T%%J=G3Gpg{u*rI!^`9Q|C*{A^i`F#ZAx1v^r-%5SjH0 zf4a^c6T(S|e=89lqS8O57gnpk7Wfkbu&r6oU;n3(e4~cVbtJc8H-`RNwf~sp+XyEi@xR9OGX?3l)Q@j3 zR(W(Eq^N_?{u(#)f$CnI*L1b#XHwLBreQ`rJK{9DXphGjjO|$Jocn$UKmPmMJ5PU| zO554;;WOleZldOc=Q!QiQ4Gu?qZ{g2>jcBOUoooK7iAp>JhOEA6mYR~?4~&uoI6vR zir8ZY6G)fc?^wrkRP|eSYj?hKK?LEBuldZ$+&*1;`c&xWV=jTmjZay|*G!WZhH@1rIJ(jR8iUssGoSz7C6M zg;3RNf5QfjJb-kG?~s|tf+tU(0U?I|$!?J^I^~xdf1uJ7%4yzoDMVN18L|!H<{QO{ z82CNwN+`VBI1Gk@4vBQXk~N@7W?Vp8BfRwd>+DVMGgf|EO3dhLCh1uiiDQmJ zNCAl11B`v!TIwyO$mKO%ZEfu&j@X6|dAD}gC#(Sa;**;2r9&}D8)p;918T_#B%YG~ ziM3jsq$?Fx0P$KQ0WIDqXY&1>D;LM! zrK6une>v_nt9Mf?X1Tv<9k=14qlGnz#XSO$_VJsRjTq`HvU-VF@Y2F-$Y8U*UfhOxO?vl zpoXc4q4cV`24B*}3g%LRZ#O;YdtD{A%4ZiYsEK_6vwJMH{t7FMh+tcrYPNIk&EoHq z-_OeOpLuQ!0&-UGa@Cj??<@NK-p^Ia3>XkSyILYhF-~3R`qGteZ(lDF_u|D7Zle{c zzkbwqfm?RMqsX?t@aA-MBywQ@a)iQRq-tZ-;fkLizFM1YgO{{^rAQuR|N7t=-tcI8 z{8^Xp?}!fu7QAKVl{bILD%;?8)oQ&SDCP1&9C#2ivfIboeO)V|BW$I z7X!CKDo;rl)ml`JGq&|=YI1H~!5AA2xN+R|LWdgnF|qoE47UQ6rx)v;E9F*Py34*Y zmp}aVJss0TCDL%iJR~DYX>^l{uKdwtfCizM2srvxOH=+*BZiWlC;|m7*7f86oo=0l z(=@Hx`OY)%v>xFz_imWM+q?73n{D?88w?WD7o|r6C(}tIHKR7=Gp)ENyLKbOlUV##a(e!gGrV5;3&aT!mI*+8f zl3R9Ub*ooNmNgvQx!tVx40+&Y9W=pGhQb6@WJtJjf)nlI?6QY%hn)rwm@>!*?WKUH zlWBT^jz{;!&Ws0aT@m1PG^*JIew35{<1?VhE6H*49qgm!)=Syaen&pCp#aZp#lQicpYVIc9K=5wdmjO>20)p~kUs}^!uSPTlkrF<+$3m*0= zxVf~z-Ia7Ha?(*y;kXt^BP8BBejsn!I zsF*t~2z43xifOGGQl8mE>U!A$rw5CRI!&(CbQNh)p!VnZP9E`zCs!w&sVG$FjPD?{ zqLwJl<*G>EhG+7sP|K%vS9hxfWE@KD(mQvFaV`q4b zphSdW5LW+IK1m(z%kXU3^o)#*7Wv%e0E#;5p^>8nt!+{&%)#keNM+y~oj1Z%+BXxI zF~Z3;{E|>>4hY=iTjFXFl<{L55AiB$cjD1h)cq;01UXKZ>;UI)M@hTqz(r?`_shHv zBEy@^tn!q}243H+qs<9tyW4!H{bC6i#IbDk!;+4)S+&qC?y8`!yu&^myg*+zQRdg| z6wkHcI=4~bp&0M^&VyVjUpyIM0}Y9<{iqdjZ!U$u$)F#b_=utwwHpkm1eG2gUVyRz zf+NRk=OP*MO1zlLdzxd8|5S9O8N@7wkym6CJ(pO{6f$!XWXhW#H>M_r#Jsi73^&79 zP1HH^iTsHQR}7PVv>uB*fc=4@n@O%n;VrlBy+F|fUqjpZcS<*cFsSBS8L;7MpS!yOoD9sIwzOORsJl;d#jA>Ex+Sk|KaTTK4 zXmek&t05>+3>-H+F6p%3kb0Rn^>%by&t16k^4)pdhHAo-gP9l+0#U;ArI?b*91qyy zv$%@@bcognBVfdV3X0UA;+y_(4#7|kBJuMktv~%Lm*!cIXxR(JEdq0YuTOkXn}W>= zSYy?XANc1z>r8R1mbe2Yd3zn}au%T+6ZX!;W;xg+rTzp#66*xz5@5kcLz$$QBEVE! zk$qTRLSSnySkz=U79GXxlq<+bCJ0Ip$9LL0Dz=1>v@ycaM6b>ZqvjnEv^XO;ncGr- z-eA5Ol`9A#5r(*jzXU*(EE;~3*+3rsghlkP?Z8ShN%u?>iy+xiK-yaZ2I5-&W4By0 zJdQwK7)hJk_?bnp%K+*kgM76hSzr4W;`hB9C#CMhj->FLbUW_>K0wT|a1Y@74zL!50CV)@?#+F}(QNr3RjJOt zOeuqr3LCeZpWGP#tX4KFn6JYoB#w8647ysQsMMsgZr&T#+!_D)@ls#&qvezRDJGky zhS_*oZ>N;e!&=WNVUeak`L4C-fSm!2Os8%Tz1rQwk2gPFTA*IrXg-@PxO3}ZE*ay} zmu+06f7OH+#UQ>zf1cP4LP=i^VwfaFvDP_lPD3{(EP@*4M8l)TOjyliYHB~%s{7C^ zo()F#hC37rmAD-UIds^>KmPKI0Jle{e zZK!AGFk`%5wtex8MTuLYimO z!Dr|UpkZ`hy%*8@9Qg5q)a8qT>aU&mLP1t@Iz2uRvu}lzSXA?%oLFS$mDtZgyeZJm zrlVt}+?CIYkz~SpkSj0WaMIj8pO386gmkg#Xm|1;&9LuUVq?#5Gyd$medZpY*e`Km zb+l57)2ofa{N=12rR>uO0HZq>mO6e(k`~R7_9@gl+3c0wczJt>IroRh2R+-sWp44= zf;4B z#Yu%hoeo|l&(2+Yo9B{Y6ZETQ5TnDi9m8CXFf7uAe&a?$$_BUG-%{#BI%#ul`n?1$ z;G^l5u9tqsA<4dBii%=RDX(Aos`o2{yzEw5?>d34+X4`o`F9}Tn&yTKZcCCd1TVXr z&UdEjl|mbDdQQ4K>aCi24RC*I5J%v6%MEfAynnYbEz)Cjo@abq%{e=E`PB1DKIr|D zaf!B*rDev>uOH@s#<54A$@s09A_D-V^Fu5COEEMXqx-W6ZA^oU6LUi-_i4MzN#2kIrj@b~a}oKa56dC@8BQ-kv6fv#1? zua*b(cJXPGMfG*r0L2A=U2Q4_2xFcOHnFjLxLVl-AiwYhmYWhmuTAHC(+$(kbJhFa z{`Ox`ZS~GA*TL)6wL0^q?D)YDq|Aq+6W7543KRo{?|PJCEVRM)P{B0|Cs(u+Th8UA z0k_~nNHgh#i{@WDbD$~zBfcLL2ZF-v=eYc!*n6WD_v=c^myGQ}sxkeqV)8-UC8iUYDnz5nWD+=AkyrgF-*sJeqLYvm$$} zvoEKYqcE|C5m*vxMQ&y6+PI)iE#H;5IGJF56GkF0De#3I{g|2q(ELU1WS~yG?D{P( zFTiZVwiNs0j&WWg(=8FwoR|F(X&jPg=6v|Wxnu*~@06)HB3?*Y$G3VK5>bu^I$vrX z4ZpZ@bcNc7u^ez#S6F|qh_oJA>wYJaq9*GYsSn&i<0*v+1}CxYrdm=?s4x@jcTzc`#G^r^0aIBo*TN1`}QUG z%AK5Sgh|!9y+8Q*@hMCF75PBl#M#QO;P0OI%d$US4lc1??%Sdq0ch#|VXh}kpr|DZ z$-pctrOeI)={2wsI5R(t*mQDZ6V&_gVnptU$-I?T5leg1xA*2afJ@zGW$-uN&JTRY z-hhQxKiNODbK&sZv}@5TI6Hlh8z%F+S-9!vEsyw7jD`*6`I;{_X&0ZKXHKeIGek+c z^s=Vk^2-160cEgRoQDHOySvJ1GHxf$F0`Je9*GAWQ3;K7$OlpE z&U2*nk#wHDmgaO*l8E+b(lxfjr+uezG45^7`dfZ)CG>32Zej3VJ$#iK?ZD$xHT$>! z_5xgygu<1h1Uas_nPJ)dr-`e(F`jD-zOI&!+u4F(F4C}#5CH+p-V8~%SnI0~zu6x| z6Ht=x;6LdsczenQJJUCCWj+t9@5~o$G_Eo_XZgMpwv`fxv{N?sOeHOk=#zwp&dDi3Q6xDh=6k4isV47-mS{0=P3hqMNgTxlp>iR zqE1up$`2wngv`G|4_Gx#d_9W=I*w<5+HdQ6542#C@+jo{q!+WSna8%@8(xZ@to5|( zc(U64k}}m+=FV=nc;CzOOE|k#@DGV<^9bfQ4P^8wh4#BEUwQ0H)+daA4z6vdS$jWE z%$s&Bve#m3Q1Y=|b`GlPyPJ1lG>3lI`$cZkKm`#2vMevh#F|AqPE20)Xv?1U zI|uA}wuKb4BfK=$k0{?zp=pPt&IsB?2M}r;C-;U(Uz$~z)+PN0<%Q_V&e#Told&Ah zj>{@OdQbVi8PoL~-`aNi=H(?`h~UDrCg_rmICk zahC7y+CRHTtEZRCeEdGkBXo4!0LT9dR2I|nh{ac?7jzZab447Mbgm^9oNOx9hKxn^ zh5fjD$Y6r+)QLZ_61}Dag?H2N+K>TmlEWN77>oo+#RuyrQF05i)8eUzVmWrc@74K} zSqger%yGibvcwqkM~ct?4BdpeEO1p7`LIl1mIh51L(fIfD(m=3NT6^C*1^k7U0uD& z;r7v*I7E;UD-WZ?Z&8PyFWoc6Ztd}cuTz>A`%>du8A#be`DpQ5D)bX8k$(6=t_LLT z(|23D33c1Jd4$d-$&uIY2+nSvd@ZeQ+rUi;afC;RVgCIKC2_^Kt(buv;y<(?smp&@tKgqNmC}Q9LcQd1vb9Q1g{9WrPp` zM&yL=z>8;tQ7*Mfx2^(qwX(06s`0G=LfE(C(tShx_xA>Kor0A+Dvy>TpSk~d-@|Iz z%LWTOPtE|7*UNWki>CORmm+UfFkE`3Sz?x>lWsSaJSnRT4<>gld*tPx2p z7fYop4I7YnxDU3=8)a91^9pN;woMqs8;SsD;#>eQRCtr!rH(0%D1AKU^YagY+E{|J zW>(o|6bL65mUPX}(8gf$*SgK7tGX?>oSfwec`Nwk*bQ7K?ey~ezV%}yw_+A8<~dk7 zo*7S6Bc?57X<(zA%0cWeSRpGI=Q*f(*>Kx|%!!k;4VSf#7)x|#+LSP)%admJ{cR|^ z_E=>E2;BspGvfO7{!iWRLP_AV1sbAn!%zoiU<;|lWW|mFaF`HjNjXXlb0zM>Z6VE zVy%9;5wPx3UIFCuha8CKjH0za+-$HC2ew~J&8U9u>Pbyp=gs!d|KT{(k0YqbKtvRL zH174(+W%*iv?M3OE8Ktq&|0PtlA~J7v_IdW=1NDkB;wXaW{gEoY07U!=qKGPr-E-9 zNo%#kv-i`=re4-l?xVF3hbrLVe2# zZsW4=$$=1#EB@q3g_>77&#U{AJ%&*z32>?DKFomFjY9@dlb1dwf;ecf(-4k*%W~-p zqRI?EsQUViWla)L(WRIzG8Fo<<*f>J(>VbaPkZ-HV);jHW%o-_m6hQVu2(XCV*3Pn zTsuwp{uZa-@}QbW(}6QY&{gC7)u-WS6!eeIMoRe0=DySVVBjk`Rhx=7%wf}mFI$zd z4$)G}l(hngpGyEdcLCPLb9m>!eUmvswS?8@2SJPBZS?iB(lnMHvZVeTmsY zo+2JK_BkrpR?e9xQ0OOXtc2`(QBLT+Pb+}DPI2zZV9vV*N-?gx&JN=;$QB|{ycC|l zDkD*Z7lfDJ&c%*C82&MPCU`<=T%BMTJ_?n7M1C9Fln@P-`U+ZNf|rC z>YroIB#u9vPqT|P?EzvvD?g||sFp#6b@vMSZQHyz zzjbGNnGP^Y?j$&0gcP^RN|EEU-g{ql^wI+Pne)SJ`~8NRl(v3GoNKG7#*zc-5UKZF z8HCWnyM}qjZwKc^Qw37v2vidwe1z|RfA?Ex2~esr(ZerA?-VFSj$aE+6+B_qdE9j2 z_Eq5OYo+d&qB6^mm-Ux3u;;AN>+Cx0?(}w8xmK^;lS1!Wx5zw}!jLJ>P6K=LmOwkY zZBFC2w)<{(`HkARIOc;Atndwi<+Hf5Q;l5y3u~z|Ll)l+p1Q3>1O9*uaZ^Ls30VB} zX*&ds+Y8-qIGFV_bdWT!AoB;mT4>BUMulOARqIPXwJ!`z7+bE7joR4We!%CFd!Go3 zzMucaCff{e2^<##`Qkm)>4To)RGl;U(R*TE~SUD4`e zk*VX?BmyrHH`DZon6!5UmgHpEqj#&){)kboEo_y~I$1bpJfdu`p5l2a z>$)sPS67r1A=;Md8)d~%P9(2aaB#4g!!l-B<@lUns#r5v8LM{bEk|F|>dU!pCt((~ zSM4?Xna3=0p<%F=*Q^S`xpQY2Ji22&#kMbN$)Yuhf0K4pi~Q_FL9H8In4d zwH|SRR-E3UAW`7R<-{yftz-s|bp?h+^H2#bS^7NS--ziBq~J9s+oiy7eL+4fU=d|1 zSG;|R^%i>uueQ@F$kFH_ec2uw$Xm}R>&=59h&*Sk^4DIA$8QrTBo)~$C?L)CMLL0r z&rJ7Di?8IjPyPYO;rO!I#-Ss~_5AK2n0bSO>gihI!lyyKO_waMCy(U!a-AVvq)Vn0 z5!ZRCT`3_UJ_c!9p&b?@I@@nFMI%$^uEpQ-n<_=>W!*9Y<_wW~K!PaW3h`qSVa>+X(#S-y?uH zB%6F=CDm@Fy&bKsczg7GGiOGEqPlM6nQ zhG%4F(~*}lxO@SJ&s6o>E@U?~RiE3K1Gjv81LGZqQaHXug#@pvr1>z$~@X=gr*GoD}k^I#JV@!6)o`vi8cO}D>c6I{raz281 zMUV!8w*@3r)xp6*<(aDr!Tw3e+rvEo{qo!8NMeAhTA3G)JP^z#qa0Zm8WT56e3sIy zjFDt2@ebaLO*xe^9|zv#{{UR8rr>(5iUUBnb%L;ux%aiyd&I&eT?)F}Tu;gS7Z!pN zun^m~w^|R2M3N|fz*((lj)bksO|i;0PJ;6}iOL08SLpu*$Q?KlP3*Jwyr$TZH39pJ z2@6}~#1oZ6O9fmYfIRzozFR###Fz$*NRteG&=XdgQ^&SE&`tOuIt0;|{$KvVhf!pAKJz8YxkxhEe@| zz(+=ca^lGTm)+!=M0+W+5rl1?MYB4csd(9y;@7PcX!_gc=|C)h@8}HtHVW~#Pz*{B zNI6rhKbe1$+MjtzxF~xzg|{Fol|4c`*V&Q*W^>WHM&L-dsI>xcIhOIV@#1?D2H&Rf zkr*HtirxP%0TCQ;(VEWTLXbg3luX#!5fsPvu-s)R`pjX)F9DQZqp!U3LSMxVVw!*g zni;zraU1%$8C6JE6w&A63r!5=uQF8?>Tk>X z1bn4ay|Pa${k!#;o=Z34Me^8qR{f*Rj>}Jt!SzHBbNvypzq$PTf71a6M^k6QKo8sE zuW0>H^Wdj4v#7)4ouz?~tPBNS4J42x{sY^B;FRQ21;i#?gVKsE*bjaj2v zD|}#HO~;1aLcDd^k?P(rIsb64IeuzgTmE(tNY`&7hSvd5xM=Qg%{;T=a+xWhXJd=)*fe3nJp(YcGPe1IVCHY?4> z7ax`To^u0dSAP%0xTNG@!eNl7F~2d$6ETgsRKZr0QH;FJ%1~r%&u>w3@oe5ri(n}H z50>})RVX}Pt@~upk_mRT04Q$$dGgIbAD@3rr~e>FA0jl~6!Jm3I}kw3L2z%@2Bm;o zGR69i+ylg^Sm4f5R*>&=KsxdQ;sAIf7WQdw)A!y$6?&DCLW21bM~`CU0!uq8dg>`g zo2?z&)e|Q&)kZ?EWj95`#{|f^*Zz#tGM>5`tSe&W@N7fc07uQ}b+*2tf&(I;XJNgy zB1Rb30gF3W9%P2;-OlqQv-P)M*K5MLe{T$W#DxGlLn?3?mb6sZJsfi~#%MDDtvFIe z6zqlZba89PSx?RqZnca{)b)2&*O$m>BRqOL6q3}3MD7ZloA|@FPKmC}O2nxs0oH9TTbM8af5-0u`p$-$bRQRuB7! z?s0TEGm9x~MIqG~7gXz5@Y;|0xZx}`u$bQ&x5Jte3xLL<4JcQ=(kB#jJeq-lxWw}5 zT4-dM(t%$4 zZca|)+}-QCX&fJ~%k~P|wSDsiDkOV08`E>(t|Phz_cX&sw=Vu}zm|6Ks>~mc|J|LwXGK;o5IA+}0eW+{66YQeKK_-G%wS;MO+2J#LqxY{_G zj+4qh->ZOybgjrMcpK#^HF|B+QXmIg-6|2cAX6BxiI5KMQqx# zKMk2&wdVly+mZfT^(XlIRxC9{@ZyWBmB2YArx>wtuo>45;n)ZeCs-?5&M)J$hHd3tTJ@-bG0W(vooOBc%^N z-?@IGy%0oG?ie5Heh9Q%2{ruIeAmbKzJE4<8rOPEVE4IKF93D8?wwVw$Cv1qM<*ks z&4Q-IASYk1qVe?J-;C49VNVE>cz&%_fP>beP6!Qz<56<^~Y5SAVivvs~jC2=ST@YYw%TZmz}o~ zmqQz{s+Y5k@+TsY+?JmxJw3-EWqe!nuf^FKS-GL;w4D=+S~EN_5G6PQ_UAy;$=SIR zP_T2rfs>r4@>Cm?zQry3V4AaIauo92gs5vl{fkP&vk)qDT?$rs1Ku^ zy>rBzD8mNmNn&)@f2z~oehM5<9R1h*>VfTqW7k-0t}bQQ+r2ZeBrSu3!O11Bt)jP7 zxU4$V*7S5zfLcIbnVW$$OTa5F92(E2T6Y69e z>|bgu0N}$FHnJ#Zp3yf@xOZFTq%yk^bO~n8J;twRoR-dv&F>r?Dc`Dsm7xK%V(;8y zohkwmG*WkPcqd+gs(JX!vi|22mbo~o$p;TNP*nCRSnFpb_kll)lOwm<8dQfb0!xwVEv|#pjZrbS7cx7Uo->qrjsQ`*^I08umjq`GZ^;N)ni%4%R1= zlk&>B`s6KtSOzmzb52KUbk+GtM0}N*;)tURt;%Hwg>S_*BlfP*`BB1CTl%5?R)rz6?`*H2z!D?Hdxljyd#s0T00h9RFi?7Ij!Uum?B413PK=)O@fCV6Ttk4YpjH(F%BuA5Pjnb?D}xOIKKwSgcRD9= z7FMP}JoOYICBK*g-2V%uMR(fc^ADO)E?5btHsES=0ykHM#FGF4-@tLMBN1R1Qi!0l zQ9hF3rX-{Lq@{Kb;34%SlnCH(ER=$JO6^oA3tk}f zvOl20!WAPRs3-whmXP&ors_`96#CSncMF`Zi!K{&gKm={oH4f4V>Ma@`ay~BFU6QT z1iZ+D-->t%{9gAay5Dpm!7NJh_OC|tg~|yOf!+$|0Mj%I(zIS}fW`!;*vcF12huBn zCxH2Os2r-Th!I>doQx!+!&JPpOm~^(X@E#iI!5|kQ%AXASJmKL9E}ux=(p{N5KeAw zi@VHf*GVH@QlYgYdmTc6=fZjVy~l*5jPKHPS1r`f)fa&B!D<%+*YUcyT3>Gf$3pdQ zJ8qpcs9)g<5W!M>dZjf8RLmrfVDXrLQ#+aTVI8Lf)C!P-KJq3gC=-#uDVE$#CsJZL zsZyiOCfzsZ@Kslm3PfN$C@_P<)vi`P$|pcGcdkC-PP688dF2Ohf@Frqgahg*?i3eb zLsqJjCM@PQ0^>ppAg0338owknXu9V8pFXxJb+Qw%YTfA!^X_F;>1GtNeOF1Xji0w@ zk6EZQPVem9v;8yn1d9H}$NeY(5FZ%(h3<6q3WAl6%M7>JnIK)s$$S%croC^^@cxT@ zog74v7B>!To!3c;C&IHE=W4B2Fa?=<%K?>9>3(sB%XtH8G^N4H5Bt=jL}++O?;hSI zY<Hd3k00MC-O4!@(z>x@ZJKr!%(u7f0) z^hyzHxXe}>?D^-preblGOYw?&Tr6{WF^#bzH3$g1ptNc1=4Zdi zMjnO6-4QDv3iNu^pj|*EXqZ9#rKky3HgEE#$%e5G%Y&`?9%mmL<@3AbZxX)r?ib?suNb zZ`8a#HmW+^^qKFw7dO{;Z?QAp`*)8xri|65S32V*qfpkk8H9v_10i6ngNBI)RqPCw zFUk!0fr@u-C4aIOm}diKp7U<`HTo>}<_DCvQj7p^Q2`)&oSV_+X~170{A=V*rnz3O zZ5PD1FPGgldRA^Dkfd#bRXzO|v|a$o5ie+JWqCRopo zw*&MQm=g1$==J@CJu~8qjuH5y#PU-)UdFSLGYuE4&O=F7j9Uh zSpr;sQM3X*@oXJQwj-GgD3m(qza%*?ORU5yut-e_OS+9nXx$<;FNf&3G)Zh9f>tx; z+HXt7j*~i4i(CjVDkW80Z9F@3$OKb$z5gIUZv@7Qj z$ikUZjZGbM>wb{pYa~A@V>E;EfrZ0*#`Yk@r76qam1o)5qa5;+p{8vG5NCTi~?hHq5@!{siz+ zE$ymg*@q^jrQIlGz*XXvr;7e06ha96QIT@v&mv_8IhFa}ETKPN)0_alW9K|ShZON5 zr0o8W_f_B~UU&^!!v#zun9G3ARULS7dKC$UsPmq{jn@p%k*=XI`R}~LgZWIP=kQx7 z89!xqF%k+c1m5${o0E#^6bkUw3(H#UrU9?xkZLzi>t*G@$pwRxPr}Gi^JkZbK7Qhz zE=L})JE53flY%qgnpah^a?dK+c3-pX?#5|M_&fv_`^;l2zm;LpH%eGJD5aS)yD~{H z6n>qbj-=W&zDW1k4SKkT256Zqc))42>B4i*c>|z;A27cat3=$V z=g2l`K2!1t2kK2-EQ#kIvYQ2qJxZV_kIY4LRO+OTVD|Y-cLS_04N0}vhXqwi1qT(o zgArD1T)S=<2jV85$vKFFPD?cM*BFm+p~KG$daWrGZ{w_&20`Cp@zDo;NSAjoFh<_L z7;W1e+E{?Wr2Eo}J9ppc3Ijx*0QP;R2TqG1d`*0Kq=ALCKb~QyrXn$-7%61n+?WvF zTD49zo>#px$u}72`%pY`YSW~iGF6PjUj=u`gy$2d?axkCY%9&oVj>tSCpWy~go;U6 zVwvk-m^RgKbtK)|M&=I2+w2AM{#27qMcoW#a(a_iG7l8p_R^3Z;-JPZ0C>B&j*Xl} z56iC-iOqxCQc@J)4;#(dS5u=*p%G#Vn(sH~epw?jFc81fGQtV$LK3f7s&==?T>HF+Ya*uVQes*huV<07F(7H7p{d<7 zG`ED)yLewyk8Se4K+{LZOoPTxj z)8@a0!dY7jjw*ex!R?=`M`nV|!HQC5(9*~))(PpVjtBgM>z10cjRiW@`LV!o6lf)Z zau9mvs2TwcM@>dx$Vx~^0-!Isn^NYTODb)(aR&f30L?iqeRu9@x8=g4S9#wv%$hV| zH07N3+AlMKuuoyuDnXBrRspTbw-gJb3qY$v$Qa9jSuv&E$`QwEuI^Rq6+z)!kg~eD z@!*SiZ*k%0;{xDP11i`VqI7|zCyJZKIZXpaECVWyUzrdqREz?dFQ{Re5{)8M_$`HV zp>BXWMXLH;8WH)S{Y3ZYG}6b_mA}E^0YtuxK8kX?-0A%9@H$3p{0VfA5(+|*hOh)~6)`>);yIg3_ zKmFbICCabNoC4--c2IOXNa(x&O6cGd>GbOah0akFSnVJ|+!B6Yrh%R7?>0p~6d0U! zawq4G-U1En)6$20sQJ4{+Byqht-{}V-cM-nEhwNXpRl^vqf6GiGIYBuX!*AozS@Ms zyWu>FVV=Ad58f0(9+@-^-af#3K9_Q2t!5r$+ZcH9eLN4tQ^mu>H(R=+PfjNy84wHN z%}iCpOu_IRQk{^t=NN@ZBtu%(hdvI(`ez;^t0%z7BP~`hOLzyxaA_~iDGhAmSvHsH zc6Hh*AOH*_dX{8#%-(ya&`$(_c357<_m(K+7^jvrF?cOfBY_v}A#3D89(VgUCAr-7#>^LadML;E+D!X2%BHXaqnuTUZ zu$|*pHMGg#$Stg>CTBdEB2&11qTlW9i!{%-&P6a=S4p98uP^mSKr-@hr>${b4pY=b2^D%6GVY$$uGidZchMn6_8glo(!jdB9=xe@pc=tlQx&*o^@qhj0<1)ST1u-GadDHt?(;e!1FRG+gSM32gEOpo*;Wn2<@Aa80_Kq?KA0jwCZ5tM_qP9<96vj=d<% z$nX{^6r?eClE?YuG;QM5wg*kUzv*6>Mqq<3m>0Dh6yL#XMwCd+HLGc0XKll)Y#azi zt{eZ=&NB>Dv6tK}3L%H=2u2HDOCuVJk?dcb3E7-gk2KajR(=F!n$K_Ggm=k|uVaUq z((-^RO6FrN2m)EOEWZGV?NQQ#f;#_|3lgXS&wdc}4MVzUS5;v=ocP0l_Z?;C4C6hD zTfHsnzLP64M=!t|3F74z7=Y76Bg>Zoyn0I+G@3p%`l}030`ObrB?9J$;%KN4UcbeG zleXN9N-ewjR+z}DA9elKJY=o$ECaL^i4^`z+XShWrvI-F!!JM&_4!paI0JZd@8!ux zS&&ZsI2q{@k*?%+9wJrVq3acU*&^P<%+J4tOw};sw`?@Y@LP7ejq5aER!MLcC!gpH zB)T3)xB-Q2u*_U!4{0%%^-N6-h6s8T9W28mn;A$DL3im({A@WNPNdxjb`~Z$q$^Bx z7pDR6540QjV$>7Zg#LGvV8*t9y!?bFXkKEp=S3LNP{C2VB4Zgb;0|W~a|c~C{r_j) z$}ao2Bn0a!rvvUy!Nh!qCcrrRt3Q88j!L~t^TEOw_vbJQXdH--ucQ#-k#zN|@;=5oKGi4RBM+vtwZnK1x5wfx~ zLfNB1h`Qyr%3dWqGoy@_nPe-9^Zpn;J^DATN~A9!b7c%kA?K~GKiROv9q^q0bd9$k*R zp|Tr50_mm;$6D7qBoOFL-_iD&hqUuXGw0-dAT0sJgP<}ME^osxPc&^5A4ucGO>?s> zFHsYEgf*V;OQI#1`x*IccNUv|}>7@ttStIs%|*5-*dfmwkWTqY=S;DJv_R zQ0ZR#An_xVB1YhIELOjLUBalfCBx`d{;@e1?mZCmUEBIc3+{hQ>#c3iW4GhbjwA@B zr${Kd)&qfoKi24mm59O&VH<`)z~B%NEGv*SkA1r`k3=g+f|daZ;;gFy0f|A-$Yx<& z1VK`{HARpiOF!>4w0@hFJ7gD+^O2oDO-FkVL`$?V0L6Ly{P8(_ zsC;=c5^{=0+ZX-ZfEYxAJkNoky9 ztvz*~8A$BlZM8_m#8u@g3peCGD_^<{`Rm10m1w^7)bHiX8mJR1&pD7k2U5Nu<_fK> zZm%t41NVSyne@wY2g?8u=<3N>-SG?UV={h@JK}bdw88zSa9x`I$s%~1q|2yCFAfh~yCc)s9rPNv`4&l(>Pqh1nFY($|c`td2` zvylw_5|W?Ml0+It-`*7nCtA+0@#}hs-oKf5*JKo`pG1zlYy^@RJy#&(4MDS3^UvA{ zx2#l!8m=k$S3MwsmyA?C`pAkv>TqdP-&1$cvdwC|@`4|7uh5)c5B<(pinxPA#6cKg z;FX!S@#)h6@fNUXN`~Uh!h+PfqW0;L0K_XQm;(AG2`|X!m-QAq$FK~HQ0N0qC^NX#dV;J#N>Pakk9~}(SMP9Ah;MGXM#%u}4OeVxzI5acAO34Ovi@-B83@|X)=`;q*ZZP&>L3>MRgfCfnB~&C z51u-?Zt?>XOJZD=DJlQal@x$CIW_Wy>dA@nb+qiNejjD#n(#+`={=)doB_LIcDoz^ z6*X!sW@i<}>UM8DJMN=mkh3%JWOE){!r>GSY@4V$jtS;E6+^Dif&Ii7So?w<$3k{< zoSiy&i!g5OU@IlwOjuB<2&erHG^bKC&1Pym>C;is=li60iwC}WAOE;r zp6j9FnNq03%pkck&f~z^GzUEpL{xohXi5s^7mnqX3Kzxy>(KNh^pT%f=uEnad2aij zTlnIeD4^jeK|R3&$gR16qaeE5+X1+91|RwrPXB+tg}@z6@xqEmu0!+=>3ZPKEudB+ zWdB9UfyHQQ{=HpAy&RR)!4~Od!rw;-GPh}tI3Zo~va+G6No2%nJezs>dL1DwuUhU) zSR9Qk(KH~&hc3Dj3PR?yBUl`fR!z5r+J4*1DI z_$Tx~nFALHC2v-MuQ%Pex$#&S;aL8xTmwL|ajm_dz|4IFN|VB7AdmO_QrjtDk#KVA z?_|J6K%e|sl^AUN(|HhSi|fqPu00>Vv1qTIBFaDi*3bR)d6p2-(d)ja_?Qf4{)t|e zk;|<<8e!NkO|55%56DM73BWV^;udm5*F&DTcJq&SRy8zV0@(8OvpLoPg8|S1E)Cy$ zSZNE1o{?)B#BwxMGlz6b6wuDnfwTs`RAKt*J9fW-#G0aE zqUwjfx_9MeHTU9F=qFb)A9~Gqo!h-RX#c!C+}i&B$L^rqYDo+}MvDFy8px+u8DIwq z2aiB0K+;N^5fiMmwiV-GkDHjRed5upk`vU}?>*YW5L5Ae+WYsBfs}n8*5-7ox*_!; z4mk4q$pZcV{U+ZyGQZ>_mjOs%BgLG422|2%O5Vv9+(t?naqool`7tw)Q5(%J4OF?n zE4g)N8rAfnm)J@mE>OXzJm)=SL$5ydk0_ESjp#e$XJ2~mS`iWGBrKqV9u z6TeSGzfL{y22*&&M)ZHDNM8ML6L5pqDy~6Bw}P#KkdEwmTM4bx^5VDm7aLmTJR*O$ zbDfe(q@k%}*|GFn8?qqlndU`J#|K9+{Kq{dcX`KA2eL zuIe~aWL6P2dRIx`1aUsX=xbOT#c7^78Y0z}dFR z&I3i`&kO5cGxmR5oMXe?8^DylJHl z>icITzXMR9oLJ1JB~OBkc@3rR52~GO2l&Un1VKc!FgMNp%W6uzakj@OWFRKCL zBsEC}XlcPs_od$dS_S3|50rXJcoTP$)Nm02vT#Lm2B@N-aKNGIsQr7}7x9C(Mw{2F zx#!QdehkHD8h|p=*)XW6Ar6&!XU3TsU_*p>-b95JNN=8s*z{-(-1vGJASAml5H<^U zrfWVBFm|8zpBN~+0F2`}P8>A(N9LH-Ho*F2M@&6v=I*U~4@~q=%(j;`TuAtS9v@f% zMp&Y6oRg#{(DP?1w^8A~?T1$}#H?laYbN05qtZYr=V$%B<2|aW)nIEHho;9v@k9Qd z$#P`zlCHTZYeNYpYAq^KkkLZ+1_^ea1;H5*BihWlOfAbugmFu;kQcg zGte&7*qSV77)EC6;8&R>;n1X}gYYre*Cog>u`(~{3Iz_r^8>I# zXLe_F7)wii*?ZxgN9Nm{SS5e(O)-t1-zrzNSL9EYEgHE(jlg2EugLQCW$t5 z07u4tJoEAJuU^D^nm8v*T=+g{7lQ$xX#*Uuusfo^S0O1VIzaVqc#AhwN8_i(z#nEB zl@-Txp{s5FUgc8&BnXFafeXfq_rN5mbX5|C8v2cBEwC(lVi^kFuQ{{tb2inqy{n(BGjjESu;tP@$ z-T8X8NE^xm1lLXzA>F-bsj5Q+SzGhh)&ucbmrew)pI?(^(=LN3-&mjpuyZUK#uKcc z9X&VPoOp4e5F_|)9t3fh7QfqBrjzImFcGpVR^CmNv^Re*);k@`G%u*q|F~wmcQyH_ zO>{ZswYNHYLw#L?~C|G8Nio;pVSg$p+}d0RQt><|Y@weY$3trGM`e zw-=7uLW~#+&WD0}m(Je=6gKg_kg#wwWz33eM*I`h%CG_nTqBL*0h3)=xM>LTWHkQ1 z5;y%hTN%UGJIm*`Iexw^o-mXEDJS4`9|Kw6I2jKxVfzJVQ7ay^b00g>qC~VYkbf~5 z;QQhuYl3m4`T)+}YC#WPzxsgd2s5YF@$@!@qVGwx}NcPX25Q_sFLVzKHfWCT|=fdt^5)0pZGeaLwlrUsR6m`Q}-edoy1>l^ylXZs!A zrYh5cak`N#)%IK8dz;GIb+g?dIc}D?*e(^g#GQ2;`g1&nwT#~+Hl`QZz89ON5})}N z1Ol+NN03I=?c|tNi;T6RJanMNwf-i)b!nc-_NpD0>V8o;6np4QN@4g+(k-|$u1sHd z=#v=^nSwpt;`HMi2+5fD6R_>xwJV5{G&5b4uVjcOoWd~I6 z6LzEjwct79Ze851&F_PX;f(-A9eQ;7w$N%rQ(avIDl{Rn<5{tf;0HON?t49ZF`t|y z46QwaPXIT(bb1jnYV3>h)-3Waph8T5sJFD`51wgx}M6I=nxUa2h9s% z^}cCdCogFb5VI4UWKE*qKuuf%UBu>P75=#_(W(S7+l0}0zXYvw;gp$L$v*Yo^FV$@ ziS7_=PO<8m?OVzHKxJp`$+hhGb2bGc@PoORxIaQBYaUj=qkK*<_^8?II_N1tLDu54 z$DNek7$~i;KXPRM*D@}6;s{*5arJA~i-3us`sW+bg=vAd0BYMxaG+9-{fRa3r$$g)|MJoVcwh2k`@m9d=Yl*L# z;SS#T@__sDo(kQsK03eBrw(HJ*dDIRwu&1$QN?iAdLRb(;OdIF8&Q%Hc}f&-1{$BN zdGan8Zwrm*Vz%!NLLEWuw#&DI?j}&&azaXV9_J0Hl`teo0!LVPi6J?iZQXev^&L_N z^?P^>d_VGDh&yEe{20c3qAA3DsVq%ztaD@y%4M=>WOz=YLmYK$+rP7VT$AV3xgA=msj>WfLk!6`4k7*L5K>c> z+bkuBfa`C6{<~dOP;}(^_LyCtdzHt1WK(GHK}VcltuK$&!vT2zi+fs55Xid#_(HM# z3=~`aY?dLX;zt=6s`0?mr)ya`!-%21i!2en$W@7usnz!<=-Bv!g}1CWR#!LV^x5As z@WC8BL~+&!^NRXpHG9LoQ$u$Xv7h)d`tS!0wo7EH8Y&Kc*&BS}$cC1x3i>em4%> zyG+o!xC0?~BlM zxg==_AaACMRKsF8ZiK=>fjNaosN=Oz$ncl6SZ=ZXD1kCX{C~Jk_PIWwy^>`?G+znO%6bRce3Eo!)DV0tQE}CA)2PySC@>`Oc7z zR}&JFAj(I=lfUcDr<#y70Aq&x^^(n&=Ek6N?(VleA7R)SLmqRbKUt*gb)U43FE{cQ zKOOU0DIIOj)k;2Plq4`Ua?E2Xe~*AcPo7{H+qSmH1@j*Y#5tBiZb|1Dr7GQFbI!bI zE9166_?f0=9QmcDN>Ehd(P+?`umjL-FWS~a_fu1PD=do2f*nT`;-aZ844Kb-P@jy) z#&I+q*Kmm}sVLW%q``U_(q?(fP9dkRTX^U+L@8Hup!WTB;Cm4MuyMHo=uPhyvtQ5~ zY){w%xZm0uxml0DQZ-E@Jj7BcY5}~1UB{LqMqFm7__ zfnWQ@E)w{A;>@RKeiwb5z{Z~+Y#)G_8%2x%=IvDrSGCtTK_6w|a5Nga0*hpL@-hH` zTcJpYtfU8o@EgldjVLh4SKB|NC5)LNT@TDJiHcI_`|NK$W5nAuI zM~aOQNu@%Vc7I1#6tlLPwbP@E_s&w;zI!*;rE#_hH)K#uyZRuej9hs6R+hbxKH9bq zz8l>qkFk6T$|wAQ1PE*2MB$0sWRW5QT_Adm0pI>Jeygo-r49z*ibK#QaL3ON1EP^Z zK=rMMV(&p--ukHiQrEm+&|WVl)4i*ytN~x3-+y}deMuJ`x3ecwIdIC#zf!oNi`IvJ zGN#$cZ)HhnR-Sm@ZBnAQ403YNCh}Y?8B~UfL$eMjALId3VkxmpUiJfEH$tYb$m2z= zV_c6;LX#Pi;~lo6Cx8lj)vE=7w~?eNLb|{=Uu{;V5yF`hb3<6sU-tIK_1{`S4{3K?pputfxsE-yBLnCaG~hVW*e4O%I--kX6F|RcY}_MiRZO^P&me z3Wn5$S4a}F_>4*m9Vh!FJ|Eya2k88fjt>YxqueJ__lvTs_)1g7sP9^E&>KkUV{vg$ zGwuDIx*5|6Z&7+(f7t`5;KMK6?_KAG5MLxayqIk&WC!-bbG5mhWq>vf=N0!D0O<7{ z*!?jO9$65!Lp3AmRc);*0CN^V|F0-~#xGO34=aRw&SttxmzzDEJn!^QP=1A!&h^=j zuA$guO~&z*kDyPi1gTPrn|~*%x3Ll^AZ{Ikz@1T zbG(xm>8htebktTVHttjDM5m;#F3QADp9JjngvX>hxu-N~0yHKH@cwTa-H5r@nb)89 zd!~&iL*512{|ApAJ!+;h)UdOaHwJ>}256gznf5ag5xiT>7NJd2%wi3WTyKZ2M$7)m zS+w2+#K77ee7VP@>(EJ}{ns#ekCAzKBI4mK4!C8zYP%Ia0`j`$J0#mxRvt6MOMdKN zD`cJV;&v=PLm5r4uHpCYKuC@%0NNU0ingDUx&Ati^D zZQYNn5$9-Oqj9o&%-sRO;lW?dPyueb&H+jt7bA6@J=B`F9^ClShd1HGVS<1u6`!U38r&i0RoTM)B)uK&~?}ISvVNkvtxDg5JHKfM3(ma|(umI(}ZS186Xp z9W(sUl1$Y+dfnjKwQJrLF-b#c-esZN0J3fO;ze8$41YXN$nl-=D+ zzqC9UjC7zilXw|t?Gv46Ic-J$BeC*JePs6K4*)fBF0t$r+}&THz3SrhXf8!vpe6Zi zRrAVOstlK}$;PP%Og%H%#RL?5R!n0AjiqO6LmplISZ$QVZQ1fM2oFVpH>I-;*Cl^^ z@I71Z?t0;<=Wg#fo=RA^)W~N`y0l&5-U-_`jLt}8JUe^0Cgv;R76Is^pG|p z2?|-Zu60KaGu|MbH-+j-w|F2Au+CIdM5)Q8H=g?EI7$YlH4hEv9=ox}V^9aCT=g05 z00&968N5CG%jp66DHfs_Wf;KL|8G9UhMPo1GSpInT$iUW`WpoSALH?3)r}B28qKPJ z&=VJ6pH9vN5HH-^bgzH_{RufO8ln&>z+hHoP9YRhf&b>Cgev>)pw6Vl&2X{%f4N9t zPe9-Z%QzMU2#QN+VTrMmn@hP9^AwEA-J~QeWWx??_j-W#nCGuToBrarrMMUP zDxcgN^Ot);PsRMjPX~=BC^&*J!-pDs$AR%p{fmp`qQp5X&wjRYS#OfzRXc$jdCVMK z_P4kAL|b2yxE8Sk#K_vrpU~3M0`AR?sK92gVPZyVDmK>XL*-VaA`WEb%8tf0^tDkM zf{8o6JX9))Z*8CX=oH~Bl)pt>4pa&yJbaPR zzu{V;9dkY2*Tgg$&Vun6pu+)V`U{v^bRIK0;Q#<9Km}kq+L|~wvJ~5;X~tnxy7BiUUC&-A{75?c{f0Ztjhg{|w+4v) zxda5> zW}X`V<`d8Mb&vxQHK_J-o26;e01$8v36vlF3e}3c2AsAV&s~k?ls#ijyNTC(A#8No^gzgT7JWK-WRl_ zszp&cyoh^$qIDi03+okBBSW)*NR=L{Q@K>*19eBV$%7cu7OzqWk7}c$#jGbtT4=Bxf4xfC_7I7H*Wo+?m zxcFZ*1T_Y@_@RY2pu6~p8|U@oCF>Wc;l)Bt>PI}8t?x}ia!6$g_QP)BFYyin6IWhn z5@;oV4)b-i?a@q+SvcxFZlc4jr#)*a4LLi6Cj16A#JYatK`i7ekV!UkN9wT@*BN@H zhZ9$qx+`L;e94x-j$7@*xUXZV*yRrg;cM#wI0vrS?meJ{*~Jtdc}`IDXtLf1;v1J) ztVbXZMl}i)?}yWEM*R>`mkfg`oZ;R~LiTT120uH@SAcwl-HOK&bDda^^{eSUrl0=- zu+&hC*Gk?28BYU*PPa(ThDKrag?z!Iy+`tzNKp$F3V$v_y3h#uU0#F~tbSw#pwb#3 z>$hsJkdQRn9Hy;rEBA2AJGKHqyx4`vCK!t7u0|GB9(n0w zwg1_|t0ri`6Nu+4si*|k-|!cLGbXz=q6uL6ceasuZek5lf5HuU;;G)`GPlKqZ&yXM z!KGwS!7_Wrg+>dcQZX-ye1g`vFA(50|9D~YG9do(o;*4Nc+PrQ zGbn#3-LX{c=1+Axaswft3512U0iIBZu0jt%a@{F+uQAGN-u8?$ochrIh@vGmnt(7w!&$4O4|=-E`=s?|uM1=xWBah(JCNnZ=#!4oJ^5Ei zzP(L0X0h4j5X6lYdZeO1deVk^zutg#DGN`r6n*VH9Uv;Fnp-ux2$2nKsDnK}sX-UO z9*A38TgLYBHlG@^W}fTGwFuECJWEsv3#Hq@j&1HRluJ!4G&ae|>)}*A z0fV3o`nxF#A;IO#%^`A-J2a9Wbqh)le!7wpaPF4A-4n&+Q~sso1+ow1Dum})!pRNB zUjvaWuA80f;6a!6>LPt)_cJXXijXJ~*ujI{- zXs}Czb5a^uOtoYe%_r;rxB?6RZ18h-u zW0ReEf^G4y)~%h;A;GDX{Fq$k=NCE{I;s+5-wVSnwm4GB)4u?u^Yl$$4(cf~v}`FD zgTT;0b^!h1eHC(9&>nlv4^mHI;ln?mZA%%%jhgfEfMpUo4lJcUoYcWRl=a3s&J8*q z?t*z8TnL_Y2NZmmSN@(r>5LNJ z?Pb{#Fq_%Zwav>zhccWyBg}-30Wl|G;?#DyUyf4$W4tKU(I5#|$yP_dfh2XI>M8GO(2(W1Z_`UJSc4`eSpK^o`M-IAfr-BQRlf zI36f~4;{xl>wl@)Q7_%?f~}jN`i*_d7TQ5&`IG13nmxV)qLp`8%hWXGr-W0n$$OBG z8*5GWh2Tubu~`);=@vk;OxIjfngB0*d7^xMa8o=}kI1D!(y_>rK z+|zSNdc*PSgU9!8s2~Is#l1+Z<9232sHc87lx)CEuv>wk-RO1c;?Q*Psxcp0Zpeb+X{V)f3Y~V!XHbZC( zx}Ho)2=n^PMNS1;rkuO)7=g$OExDOB51oScSV&_ac zCX^r>7xH|jeG8m|ka1rplgD$UQ%getPZVUCH`lt-ZhIfncQYaV1e4CJzMk0o#ahGxphbUY@X-|-S;#`7W!g>{eH?oIG)pNP?5 zAEyg|EJt`}`n64N;jvq za1LksG)YYeedDc^xcD1i{1B z7eurF62@;m_^_iaA!iBbZ3n$pehpIqjl#;P|HBX>uL7(rkA9-625`y|!`qK*9r5^0 ziazjHVF7wY_HMITNZJuBiu>C<#?Vc`d_8MAwhd%V;9tHcOUhrp7yXjIL<)p{uV`b7K0gNO20z_!~*3XB9)I?>{TBY01xlYjFK z+|1`U5O?sP>jwu+&Vv|Hl`9-Ob!yMx9~&MY^>qxB#?BKk5{_^*)Ta)b~q{+ zNNdVUN_AtIGp|PGRr4W3re$P|<$1=#!|4yM_7Mo5{diA#^*2M2W1b9(9Ix$C5;6}N z6dsY6$H1b<-A}%@^7g|_+>wD~+oP&$F6wHPCP10Gg*|M(L)qDsFr4l8NozKEU5RV2 z3!$9Dx7JWjuu|%XZ%n=eJxE9wq;YW^=E1FhInVzJhitqdP_qc#nob^%K99bZ|9|?1 z*r?h6es$nZ|55zF?g7{gjXDJ!mK)8M{8hZ^#&y>g0xFeZ8leGV_aX0S ze!T`r3>3uKG&D3|+Qxv)TzT?cc<(EIVmVocPo77WCELgb4VCtyuR@I|oKpyQ{d61F z8?OLd=j{QN06e1Bg1ZqBYye~40eb?fzo9@!j$eHSEJ?sH>HvP0q9=$weP34K(fdALG*ldp(WB_pI;b4Dc19Df%FK&22kQf$>Jc{04e)HeHRWE%YtodJgj8lFdK@ z1JzbA{1jztbjBEuhwOh}kxwPKH&j&-f@b6nqkB)R`-=+*xEv@Oc5Z<4WYFV`zXG~BTLD*%2CO#kBcOgtCzdnRP|060!Zu~n!5incVe6u1fQY1tl z=>rUQ&Fh$}et;JnBlCMqGi9d>G+^x4j)L%s8=6<|LbQn3HhE3skQVLJ3UR3a?`yV8Tpbz7b0{N)Ib2ZM>{9y+UL`mxSSNI+bM>z$_OCM z#`;JeRlw0^L;@jmYycATVL-yDqk|xLR)y#)H@XoQy6d-s4fMROsXjtQE#nr_l*}!0xIU{lM0w9`1(~-j@SD{rWjOEZ&Z5z^A39F}b#4{Tk#7DRlwKg_brh zCYT#|doTTM*q2CE*^HtJjm3rHN;J%^GjQsE^_uG-nmAm)6n*FnN4n`tJ4R@Z&r-ZZ zg^@S!erA{pICvZ_L93Q(zgUynRtT;Dk5PqmQ~vQ;JLqFZf@!HhEI&#wjzCY4F^q>c zCleag+8@)OZ=V~0SX9sOI-&OTC}SQ-M0R3@KU_r`@r@7Ou_G*uzZ7p3BY5=a83BVr zeEMm`{DGt)C{qcEL1&l)crBRz%ngjxr^62L zLVj^8vuElv2wHef(7)R=3w^6oK28=_p&+S`x`07I(^2i!ZA&pU027`>qpr{lpC5#i z@qw&HE+4n^f_9sHER%IkvUO)v2L#+hNMjP@oOn4j_B1d<3(n-#Ap&(B4P3K*Rr@?Q zQjFkG2!_mzTDlavw0fZ^tQL3VBn1O@uOGKt`)laUP2?3cjKl%TaI1w$HRqbd9*-X< zA8>S%Z9Dd7&7(-m0=m>Mb!EyLTF*l#M4Su~Wy{WK1!?G`9oY7E>U#c zW$K};Q=qirQ_V9*p49s}pjv*!ECpDEq_<~oz|8X75d-eC&8{A}A4^NrSYv0Z+aWq| z@#*+)(8!Rkaqn{Oxj~P`do+~4P1PYP&CY8r-~sM-(`<4|harF*O*3<-MT@t1^n@TQ zpWf=P5t%%-z{`VA9qIO)8jYkd@q0x3m+x0IHg1O{9OqWt8E&=(hQ?&Ka&PWu67?-r z6po8+E}Q@HOX)wK_|NnB&-z$*cmLT9{}-&oht&(FH?9oa+4*7%{83iWkbiax@AE$Z D+zm$z diff --git a/test/image/baselines/multicategory.png b/test/image/baselines/multicategory.png index 68f468511c74a0fbef44d047d157282ff4d828d5..ce31358c8d7a6a9c8fb2d4afc6ec641d5ac3a115 100644 GIT binary patch literal 24900 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 Qjs?CRDQP||d0-awUoml^X8-^I From 204b2e803bbc93bbaf2a909025d24df0b6f67fa9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 11 Dec 2018 10:44:37 -0500 Subject: [PATCH 53/54] add multicategory + mirror ax mock --- test/image/baselines/multicategory-mirror.png | Bin 0 -> 22944 bytes test/image/mocks/multicategory-mirror.json | 34 ++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 test/image/baselines/multicategory-mirror.png create mode 100644 test/image/mocks/multicategory-mirror.json diff --git a/test/image/baselines/multicategory-mirror.png b/test/image/baselines/multicategory-mirror.png new file mode 100644 index 0000000000000000000000000000000000000000..88a03453a83cb84e9dbb3ce1346dd2bf38da1f7c GIT binary patch literal 22944 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

  • ~<(-|oA6<$2IV&6u=zLJn;8t2# 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 literal 0 HcmV?d00001 diff --git a/test/image/mocks/multicategory-mirror.json b/test/image/mocks/multicategory-mirror.json new file mode 100644 index 00000000000..dd11116228e --- /dev/null +++ b/test/image/mocks/multicategory-mirror.json @@ -0,0 +1,34 @@ +{ + "data": [ + { + "type": "bar", + "x": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "q2", "q3", "q4", "q1", "q2", "q3" ] + ], + "y": [1, 2, 3, 1, 3, 2, 3, 1] + }, + { + "type": "bar", + "x": [ + ["2017", "2017", "2017", "2017", "2018", "2018", "2018"], + ["q1", "q2", "q3", "q4", "q1", "q2", "q3"] + ], + "y": [1.12, 2.15, 3.07, 1.48, 2.78, 1.95, 2.54, 0.64] + } + ], + "layout": { + "xaxis": { + "ticks": "outside", + "showline": true, + "mirror": "ticks", + "zeroline": false + }, + "yaxis": { + "showline": true, + "ticks": "outside", + "mirror": "ticks", + "range": [-0.5, 3.5] + } + } +} From 4b82426021d1e0957f45800a65a36328a5d6ba4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Tue, 11 Dec 2018 15:59:41 -0500 Subject: [PATCH 54/54] do not accept number as box/violin x0 on multicategory axes --- src/plots/cartesian/set_convert.js | 25 +++++++------ src/traces/box/calc.js | 2 +- .../box-violin-x0-category-position.png | Bin 30138 -> 29016 bytes .../box-violin-x0-category-position.json | 34 +++++++++++------- 4 files changed, 37 insertions(+), 24 deletions(-) diff --git a/src/plots/cartesian/set_convert.js b/src/plots/cartesian/set_convert.js index 57118325b8d..2f5c25cb04f 100644 --- a/src/plots/cartesian/set_convert.js +++ b/src/plots/cartesian/set_convert.js @@ -188,13 +188,16 @@ module.exports = function setConvert(ax, fullLayout) { } function getCategoryIndex(v) { - // d2l/d2c variant that that won't add categories but will also - // allow numbers to be mapped to the linearized axis positions if(ax._categoriesMap) { - var index = ax._categoriesMap[v]; - if(index !== undefined) return index; + return ax._categoriesMap[v]; } + } + function getCategoryPosition(v) { + // d2l/d2c variant that that won't add categories but will also + // allow numbers to be mapped to the linearized axis positions + var index = getCategoryIndex(v); + if(index !== undefined) return index; if(isNumeric(v)) return +v; } @@ -280,15 +283,15 @@ module.exports = function setConvert(ax, fullLayout) { ax.d2c = ax.d2l = setCategoryIndex; ax.r2d = ax.c2d = ax.l2d = getCategoryName; - ax.d2r = ax.d2l_noadd = getCategoryIndex; + ax.d2r = ax.d2l_noadd = getCategoryPosition; ax.r2c = function(v) { - var index = getCategoryIndex(v); + var index = getCategoryPosition(v); return index !== undefined ? index : ax.fraction2r(0.5); }; ax.l2r = ax.c2r = ensureNumber; - ax.r2l = getCategoryIndex; + ax.r2l = getCategoryPosition; ax.d2p = function(v) { return ax.l2p(ax.r2c(v)); }; ax.p2d = function(px) { return getCategoryName(p2l(px)); }; @@ -306,15 +309,17 @@ module.exports = function setConvert(ax, fullLayout) { // account all data array items as in ax.makeCalcdata. ax.r2d = ax.c2d = ax.l2d = getCategoryName; - ax.d2r = ax.d2l_noadd = getCategoryIndex; + ax.d2r = ax.d2l_noadd = getCategoryPosition; ax.r2c = function(v) { - var index = getCategoryIndex(v); + var index = getCategoryPosition(v); return index !== undefined ? index : ax.fraction2r(0.5); }; + ax.r2c_just_indices = getCategoryIndex; + ax.l2r = ax.c2r = ensureNumber; - ax.r2l = getCategoryIndex; + ax.r2l = getCategoryPosition; ax.d2p = function(v) { return ax.l2p(ax.r2c(v)); }; ax.p2d = function(px) { return getCategoryName(p2l(px)); }; diff --git a/src/traces/box/calc.js b/src/traces/box/calc.js index 699ab193ba0..58d6d55b831 100644 --- a/src/traces/box/calc.js +++ b/src/traces/box/calc.js @@ -179,7 +179,7 @@ function getPos(trace, posLetter, posAxis, val, num) { } var pos0c = posAxis.type === 'multicategory' ? - posAxis.r2c(pos0) : + posAxis.r2c_just_indices(pos0) : posAxis.d2c(pos0, 0, trace[posLetter + 'calendar']); return val.map(function() { return pos0c; }); diff --git a/test/image/baselines/box-violin-x0-category-position.png b/test/image/baselines/box-violin-x0-category-position.png index fda7376a412cc692dd5c67eaaf03da63f4fac131..36e4b17034543d3703e80735c258605412ddeecd 100644 GIT binary patch literal 29016 zcmeFZbyU?`_dZIO(jw9&qJ$_ZjRKnzP`XhXHlcK&c+VJ)adxfsS#zy5=QE%AOak7>OXA{?;~*g+;Yv%1DtuT zkFYSnJ98R0b4WZOvn zj|17>ZH24%_r+iZKz@E9FM0P;xfvpfbwBD6?VvzcS-r)gYp*~re}R_q%51G|*RDIY z$U%$y)NW$K;T-3xkadXr<;gZNIT|ezGL|S33V|0Anwv}thR;}bjFA@N)n6ZcLGmG$ z{O2XX9yc;tadA)A%D;X{06Y7i?-O`=6=Tynxm)V;VE)g@v|jL^nE(2Ln;cThCiJk3 z@9(L>XK3ug|2zsU9EyUatCtYl^YTB>hWIh9)BZmrA|dM$i|$=a!YuIqJp6w~ZwbQx zYcYt|XYoirV`D2uw*OiWmaf}BBZ@YUp%K6udDs(t|5H3w~VbJVE)l zMZjl1q%{9E$$w4q-&6A6i}R23`L8bluJ`{R?zQ9Lhs*8iE_70DT0d$RQ;yjA{94bO zbCdI_xtm9Q!j}cbCq}ErdjbMxH~gcQyG`u*s)Z5n+rBUwqd?>yBcoZr+UIzIMhoXf z0YNsh>uLS#B+naXX*sz<8`tpG#hc6BSleDc$vXQ@<2w;)Y4qoFw>M0Zlpn=kFS6;> zDO0;2y`5-uudlG4)3po1rQn&i4sLCI#dp}vnQ1nZHCSz}cYc_B%evSe78@pfAtfUt zlVLekWz)r0Efx7l?sZe%FJ;~0#)~}I`AWjU$&__$PrBerPeSz^%=L69I!xrIrt^B7 z&FS#)aCzR3=DyCV`{|6yit1b2F&#%~E32Zr;p}}Omi0PL|EiFAPRWyu*D5imkJ`5TxlJ1`uT)PwcL+A~VZ&jsfWq+3ysD-q zvrfH3v?R52hRo2!6Q@{qJu440CB3fSzn^)W_=#M#bl$jQ@Vtn$ z+np66d`eRDoDk;C$w%=839W$WO{(+wdp{L{*BNk~GQ)rhvmuE2SdorplPUF^(ie_9 z)8EqME?PX!mt!g3_SZXFGl-Ht)qcz@%#aZ1XWJ*FHtV`8bU0S;xXW|v+U$jFd|eDX zkcoR-VBWp3pzjR##>{w|4&iXWuw!sxf!?{#`n7u2r3))5FaEoaV^<8D&FPFIMQOSH z<|s!CMbd3%tZqb9)IBvUU7g6eYx(We6VHVJCc`~=%dft?gN91zSf}320jcxVetSrm z&{4nGV5Tf7*^3V;KNegsx}d76F^S+jg<|WHY!qr%ax@`rvL^%Ee-}K1`>w=x?6D7@ z&bk(B+mEQM?3#`OJXOePh=wKF?1xs=cwtWba~S`PC3*M&{=@4Jg4ahwMh8nBE4wOQ zLdU~OW$)WC7%+-!SI8M2RZ8H@9^7g%Wb3)@e-3zOWNh52cYC3htCZbqEhP+o_=qTv z23~icN^(^>JU%kgAgzR)ihuqSap%R&BF*jBtu2e%g+P|>xsV6XUøy+GHIBcmq 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 b&5wivnrMHO^n9NL{HQ8xDpfps8SuXV2zn20 literal 30138 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 RNlXNOZYgOh7R%oc{(tqg!e9UZ diff --git a/test/image/mocks/box-violin-x0-category-position.json b/test/image/mocks/box-violin-x0-category-position.json index 58a8a410345..54d8eebb99a 100644 --- a/test/image/mocks/box-violin-x0-category-position.json +++ b/test/image/mocks/box-violin-x0-category-position.json @@ -16,18 +16,19 @@ }, { "y": [ 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], - "x0": 0.5, + "x0": ["2017", "day 1"], "type": "violin" }, { "y": [ 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], - "x0": ["2017", "day 1"], + "x0": "2017,day 2", "type": "violin" }, { "y": [ 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], - "x0": "2017,day 2", - "type": "violin" + "x0": "1", + "type": "violin", + "name": "SHOULD NOT BE VISIBLE" }, { @@ -47,6 +48,13 @@ "type": "violin", "xaxis": "x2", "yaxis": "y2" + }, + { + "y": [ 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2, 0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1, 0.3, 0.6, 0.8, 0.5, 0.6, 0.7, 0.3, 0.6, 0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2 ], + "x0": 2, + "type": "violin", + "xaxis": "x2", + "yaxis": "y2" } ], "layout": { @@ -56,13 +64,6 @@ "pattern": "independent" }, "annotations": [ - { - "xref": "x", - "yref": "y", - "x": 0.5, - "text": "violin at x0:0.5", - "y": 1.5 - }, { "xref": "x", "yref": "y", @@ -76,13 +77,20 @@ "x": "2017,day 2", "text": "violin at x0:\"2017,day 2\"", "y": 1.5, - "ay": -50 + "ax": 20 }, { "xref": "x2", "yref": "y2", "x": "day 2", - "text": "box at x0:\"day 2\"", + "text": "violin at x0:\"day 2\"", + "y": 1.5 + }, + { + "xref": "x2", + "yref": "y2", + "x": 2, + "text": "violin at x0:2", "y": 1.5 } ],