From 5285735c0fc6c7ebbe764dbaffa6b270f13a8e19 Mon Sep 17 00:00:00 2001 From: Jukka Kurkela Date: Sun, 21 Feb 2021 21:27:14 +0200 Subject: [PATCH] Fix ticks.mirror (#8482) --- src/core/core.scale.js | 7 ++++-- test/fixtures/core.scale/ticks-mirror.js | 27 ++++++++++++++++++++++ test/fixtures/core.scale/ticks-mirror.png | Bin 0 -> 16345 bytes 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 test/fixtures/core.scale/ticks-mirror.js create mode 100644 test/fixtures/core.scale/ticks-mirror.png diff --git a/src/core/core.scale.js b/src/core/core.scale.js index 10b414021..7a2674d09 100644 --- a/src/core/core.scale.js +++ b/src/core/core.scale.js @@ -1524,6 +1524,11 @@ export default class Scale extends Element { */ _computeLabelArea() { const me = this; + + if (me.options.ticks.mirror) { + return; + } + const chart = me.chart; const position = me.options.position; @@ -1532,8 +1537,6 @@ export default class Scale extends Element { } if (position === 'top' || position === 'bottom') { return {top: me.top, left: 0, bottom: me.bottom, right: chart.width}; } - - return null; } /** diff --git a/test/fixtures/core.scale/ticks-mirror.js b/test/fixtures/core.scale/ticks-mirror.js new file mode 100644 index 000000000..8a54a41d1 --- /dev/null +++ b/test/fixtures/core.scale/ticks-mirror.js @@ -0,0 +1,27 @@ +module.exports = { + config: { + type: 'line', + data: { + datasets: [{ + data: [1, -1, 3], + }], + labels: ['Label1', 'Label2', 'Label3'] + }, + options: { + scales: { + y: { + ticks: { + mirror: true + } + } + } + } + }, + options: { + spriteText: true, + canvas: { + height: 256, + width: 512 + } + } +}; diff --git a/test/fixtures/core.scale/ticks-mirror.png b/test/fixtures/core.scale/ticks-mirror.png new file mode 100644 index 0000000000000000000000000000000000000000..15a23c2f16e5b92642f22c8eecf09c65e2995066 GIT binary patch literal 16345 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 literal 0 HcmV?d00001