From 259f8e8471af9ca2026900ff96e6c9c79c20ca45 Mon Sep 17 00:00:00 2001 From: Jacco van den Berg <39033624+LeeLenaleee@users.noreply.github.com> Date: Fri, 16 Jul 2021 17:16:31 +0200 Subject: [PATCH] lower default value of grid z index so it draws behind chart elements (#9426) --- src/core/core.scale.js | 2 +- .../core.scale/border-behind-elements.js | 49 ++++++++++++++++++ .../core.scale/border-behind-elements.png | Bin 0 -> 16643 bytes 3 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 test/fixtures/core.scale/border-behind-elements.js create mode 100644 test/fixtures/core.scale/border-behind-elements.png diff --git a/src/core/core.scale.js b/src/core/core.scale.js index c04899d25a1..7eaa656c6ce 100644 --- a/src/core/core.scale.js +++ b/src/core/core.scale.js @@ -1620,7 +1620,7 @@ export default class Scale extends Element { const me = this; const opts = me.options; const tz = opts.ticks && opts.ticks.z || 0; - const gz = opts.grid && opts.grid.z || 0; + const gz = valueOrDefault(opts.grid && opts.grid.z, -1); if (!me._isVisible() || me.draw !== Scale.prototype.draw) { // backward compatibility: draw has been overridden by custom scale diff --git a/test/fixtures/core.scale/border-behind-elements.js b/test/fixtures/core.scale/border-behind-elements.js new file mode 100644 index 00000000000..c5d17182383 --- /dev/null +++ b/test/fixtures/core.scale/border-behind-elements.js @@ -0,0 +1,49 @@ +module.exports = { + config: { + type: 'bubble', + data: { + datasets: [ + { + label: '# of Votes', + data: [{x: 19, y: 3, r: 3}, {x: 2, y: 2, r: 60}], + radius: 100, + backgroundColor: 'pink' + } + ] + }, + options: { + plugins: { + legend: { + display: false + } + }, + scales: { + y: { + ticks: { + display: false + }, + grid: { + borderColor: 'red', + borderWidth: 5 + } + }, + x: { + ticks: { + display: false + }, + grid: { + borderColor: 'red', + borderWidth: 5 + } + } + } + } + }, + + options: { + canvas: { + height: 512, + width: 512 + } + } +}; diff --git a/test/fixtures/core.scale/border-behind-elements.png b/test/fixtures/core.scale/border-behind-elements.png new file mode 100644 index 0000000000000000000000000000000000000000..d3f37719d7eab5fd3c4a6e3419addb2646385e46 GIT binary patch literal 16643 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 literal 0 HcmV?d00001