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 c04899d25..7eaa656c6 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 000000000..c5d171823 --- /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 Hc-jL100001 -- 2.47.2