From 8d0a0824f8c0c92e25fdf769391ec48563b6456e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 15 May 2019 14:38:29 -0400 Subject: [PATCH 1/3] bump down karma-jasmine-spec-tags to 1.0.1 ... as v1.1.0 is only compatible with karma-jasmine@2x --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index c5de9f2764f..a68c53dbe6d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6772,9 +6772,9 @@ "dev": true }, "karma-jasmine-spec-tags": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-spec-tags/-/karma-jasmine-spec-tags-1.1.0.tgz", - "integrity": "sha512-uhGYcGV1jmUSe2QZ6D/pmVehnggQaB8LCaG17EWetYJnGGu6C7LUcPkVNeMXMiewwa5V6g8RxOG8LP8Jh1ZBsQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/karma-jasmine-spec-tags/-/karma-jasmine-spec-tags-1.0.1.tgz", + "integrity": "sha1-Mz7WJZKSMG81Dez3f5uNxcOVQhI=", "dev": true }, "karma-spec-reporter": { diff --git a/package.json b/package.json index c3494f755ba..2df682168f2 100644 --- a/package.json +++ b/package.json @@ -142,7 +142,7 @@ "karma-firefox-launcher": "^1.0.1", "karma-ie-launcher": "^1.0.0", "karma-jasmine": "^1.1.2", - "karma-jasmine-spec-tags": "^1.1.0", + "karma-jasmine-spec-tags": "^1.0.1", "karma-spec-reporter": "0.0.32", "karma-verbose-reporter": "0.0.6", "karma-viewport": "^1.0.4", From 28b255aa8dcb0dfbceaae94cea5ae2de2286a1ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Wed, 15 May 2019 14:40:42 -0400 Subject: [PATCH 2/3] add special logic for tickformat='p' ... so that it can benefit from the same rounding precision algo as 'regular' number formatting calls --- src/plots/cartesian/axes.js | 12 ++++++++++-- test/image/baselines/tickformat_percent.png | Bin 0 -> 27572 bytes test/image/mocks/tickformat_percent.json | 13 +++++++++++++ 3 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 test/image/baselines/tickformat_percent.png create mode 100644 test/image/mocks/tickformat_percent.json diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index cb2a114ca1f..9478ba8e7ce 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1317,7 +1317,12 @@ function numFormat(v, ax, fmtoverride, hover) { if(ax.hoverformat) tickformat = ax.hoverformat; } - if(tickformat) return ax._numFormat(tickformat)(v).replace(/-/g, MINUS_SIGN); + if(tickformat && tickformat !== 'p') { + return ax._numFormat(tickformat)(v).replace(/-/g, MINUS_SIGN); + } + + // special case for 'p' to have use rounding precision algo + if(tickformat === 'p') v *= 100; // 'epsilon' - rounding increment var e = Math.pow(10, -tickRound) / 2; @@ -1385,7 +1390,10 @@ function numFormat(v, ax, fmtoverride, hover) { // put sign back in and return // replace standard minus character (which is technically a hyphen) // with a true minus sign - if(isNeg) return MINUS_SIGN + v; + if(isNeg) v = MINUS_SIGN + v; + + if(tickformat === 'p') v += '%'; + return v; } diff --git a/test/image/baselines/tickformat_percent.png b/test/image/baselines/tickformat_percent.png new file mode 100644 index 0000000000000000000000000000000000000000..cb9c49a6092a9ac015c44148ddbb4f3f89c4043f GIT binary patch literal 27572 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 literal 0 HcmV?d00001 diff --git a/test/image/mocks/tickformat_percent.json b/test/image/mocks/tickformat_percent.json new file mode 100644 index 00000000000..1ef31692dec --- /dev/null +++ b/test/image/mocks/tickformat_percent.json @@ -0,0 +1,13 @@ +{ + "data": [ + { + "y": [0, 1] + } + ], + "layout": { + "yaxis": { + "tickformat": "p", + "automargin": true + } + } +} From b7fed0d22ede247ea22eb5d43a44a9ce3bb4b810 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89tienne=20T=C3=A9treault-Pinard?= Date: Thu, 16 May 2019 13:54:20 -0400 Subject: [PATCH 3/3] tickformat:p take :two: --- src/plots/cartesian/axes.js | 14 ++++---- test/image/baselines/tickformat_percent.png | Bin 27572 -> 44450 bytes test/image/mocks/tickformat_percent.json | 38 +++++++++++++++----- 3 files changed, 37 insertions(+), 15 deletions(-) diff --git a/src/plots/cartesian/axes.js b/src/plots/cartesian/axes.js index 9478ba8e7ce..151328a0b63 100644 --- a/src/plots/cartesian/axes.js +++ b/src/plots/cartesian/axes.js @@ -1317,13 +1317,15 @@ function numFormat(v, ax, fmtoverride, hover) { if(ax.hoverformat) tickformat = ax.hoverformat; } - if(tickformat && tickformat !== 'p') { - return ax._numFormat(tickformat)(v).replace(/-/g, MINUS_SIGN); + if(tickformat) { + if(tickformat === 'p') { + tickRound -= 2; + exponent = 0; + } else { + return ax._numFormat(tickformat)(v).replace(/-/g, MINUS_SIGN); + } } - // special case for 'p' to have use rounding precision algo - if(tickformat === 'p') v *= 100; - // 'epsilon' - rounding increment var e = Math.pow(10, -tickRound) / 2; @@ -1392,7 +1394,7 @@ function numFormat(v, ax, fmtoverride, hover) { // with a true minus sign if(isNeg) v = MINUS_SIGN + v; - if(tickformat === 'p') v += '%'; + if(tickformat === 'p') v = (v * 100) + '%'; return v; } diff --git a/test/image/baselines/tickformat_percent.png b/test/image/baselines/tickformat_percent.png index cb9c49a6092a9ac015c44148ddbb4f3f89c4043f..6323aa015f3d124bd4f7788cb04595acf26185fc 100644 GIT binary patch literal 44450 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

$@o*hh2 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 literal 27572 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 diff --git a/test/image/mocks/tickformat_percent.json b/test/image/mocks/tickformat_percent.json index 1ef31692dec..c9b1af45639 100644 --- a/test/image/mocks/tickformat_percent.json +++ b/test/image/mocks/tickformat_percent.json @@ -1,13 +1,33 @@ { - "data": [ - { - "y": [0, 1] - } - ], + "data": [{ + "y": [0, 1] + }, { + "y": [1, 0], + "yaxis": "y4" + }, { + "y": [0, 0.0001], + "yaxis": "y2" + }, { + "y": [0.0001, 0], + "yaxis": "y5" + }, { + "y": [0, 1.000121321321321], + "yaxis": "y3" + }, { + "y": [1.0001321321321121, 0], + "yaxis": "y6" + }], "layout": { - "yaxis": { - "tickformat": "p", - "automargin": true - } + "grid": {"rows": 3, "columns": 1}, + "title": {"text": "left: 'p' tickformat | right dflt tickformat"}, + "showlegend": false, + + "yaxis": {"tickformat": "p"}, + "yaxis2": {"tickformat": "p"}, + "yaxis3": {"tickformat": "p"}, + + "yaxis4": {"overlaying": "y", "side": "right"}, + "yaxis5": {"overlaying": "y2", "side": "right"}, + "yaxis6": {"overlaying": "y3", "side": "right"} } }