From cf951ac6113cc89feb98ab3189a06953f2a91181 Mon Sep 17 00:00:00 2001 From: Jukka Kurkela Date: Wed, 21 Jul 2021 14:08:02 +0300 Subject: [PATCH] Add ability to hide specific data element (#9450) --- docs/developers/api.md | 14 ++++-- docs/samples/other-charts/doughnut.md | 24 ++++++++++ src/controllers/controller.doughnut.js | 4 +- src/core/core.controller.js | 26 ++++++----- src/core/core.datasetController.js | 3 ++ .../doughnut-hidden-single.js | 42 ++++++++++++++++++ .../doughnut-hidden-single.png | Bin 0 -> 59100 bytes types/index.esm.d.ts | 4 +- 8 files changed, 98 insertions(+), 19 deletions(-) create mode 100644 test/fixtures/controller.doughnut/doughnut-hidden-single.js create mode 100644 test/fixtures/controller.doughnut/doughnut-hidden-single.png diff --git a/docs/developers/api.md b/docs/developers/api.md index 4494dfebb..a17b2a5d6 100644 --- a/docs/developers/api.md +++ b/docs/developers/api.md @@ -152,20 +152,26 @@ Returns the stored visibility state of an data index for all datasets. Set by [t var visible = chart.getDataVisibility(2); ``` -## hide(datasetIndex) +## hide(datasetIndex, dataIndex?) -Sets the visibility for the given dataset to false. Updates the chart and animates the dataset with `'hide'` mode. This animation can be configured under the `hide` key in animation options. Please see [animations](../configuration/animations.md) docs for more details. +If dataIndex is not specified, sets the visibility for the given dataset to false. Updates the chart and animates the dataset with `'hide'` mode. This animation can be configured under the `hide` key in animation options. Please see [animations](../configuration/animations.md) docs for more details. + +If dataIndex is specified, sets the hidden flag of that element to true and updates the chart. ```javascript chart.hide(1); // hides dataset at index 1 and does 'hide' animation. +chart.hide(0, 2); // hides the data element at index 2 of the first dataset. ``` -## show(datasetIndex) +## show(datasetIndex, dataIndex?) -Sets the visibility for the given dataset to true. Updates the chart and animates the dataset with `'show'` mode. This animation can be configured under the `show` key in animation options. Please see [animations](../configuration/animations.md) docs for more details. +If dataIndex is not specified, sets the visibility for the given dataset to true. Updates the chart and animates the dataset with `'show'` mode. This animation can be configured under the `show` key in animation options. Please see [animations](../configuration/animations.md) docs for more details. + +If dataIndex is specified, sets the hidden flag of that element to false and updates the chart. ```javascript chart.show(1); // shows dataset at index 1 and does 'show' animation. +chart.show(0, 2); // shows the data element at index 2 of the first dataset. ``` ## setActiveElements(activeElements) diff --git a/docs/samples/other-charts/doughnut.md b/docs/samples/other-charts/doughnut.md index bbe7d9f89..21e98c68e 100644 --- a/docs/samples/other-charts/doughnut.md +++ b/docs/samples/other-charts/doughnut.md @@ -48,6 +48,30 @@ const actions = [ } } }, + { + name: 'Hide(0)', + handler(chart) { + chart.hide(0); + } + }, + { + name: 'Show(0)', + handler(chart) { + chart.show(0); + } + }, + { + name: 'Hide (0, 1)', + handler(chart) { + chart.hide(0, 1); + } + }, + { + name: 'Show (0, 1)', + handler(chart) { + chart.show(0, 1); + } + }, { name: 'Remove Dataset', handler(chart) { diff --git a/src/controllers/controller.doughnut.js b/src/controllers/controller.doughnut.js index 20929bbe1..91c4756cf 100644 --- a/src/controllers/controller.doughnut.js +++ b/src/controllers/controller.doughnut.js @@ -145,7 +145,7 @@ export default class DoughnutController extends DatasetController { const opts = me.options; const meta = me._cachedMeta; const circumference = me._getCircumference(); - if ((reset && opts.animation.animateRotate) || !this.chart.getDataVisibility(i) || meta._parsed[i] === null) { + if ((reset && opts.animation.animateRotate) || !this.chart.getDataVisibility(i) || meta._parsed[i] === null || meta.data[i].hidden) { return 0; } return me.calculateCircumference(meta._parsed[i] * circumference / TAU); @@ -203,7 +203,7 @@ export default class DoughnutController extends DatasetController { for (i = 0; i < metaData.length; i++) { const value = meta._parsed[i]; - if (value !== null && !isNaN(value) && this.chart.getDataVisibility(i)) { + if (value !== null && !isNaN(value) && this.chart.getDataVisibility(i) && !metaData[i].hidden) { total += Math.abs(value); } } diff --git a/src/core/core.controller.js b/src/core/core.controller.js index 16c98cd97..96bce6b4c 100644 --- a/src/core/core.controller.js +++ b/src/core/core.controller.js @@ -7,7 +7,7 @@ import PluginService from './core.plugins'; import registry from './core.registry'; import Config, {determineAxis, getIndexAxis} from './core.config'; import {retinaScale, _isDomSupported} from '../helpers/helpers.dom'; -import {each, callback as callCallback, uid, valueOrDefault, _elementsEqual, isNullOrUndef, setsEqual} from '../helpers/helpers.core'; +import {each, callback as callCallback, uid, valueOrDefault, _elementsEqual, isNullOrUndef, setsEqual, defined} from '../helpers/helpers.core'; import {clearCanvas, clipArea, unclipArea, _isPointInArea} from '../helpers/helpers.canvas'; // @ts-ignore import {version} from '../../package.json'; @@ -794,25 +794,29 @@ class Chart { /** * @private */ - _updateDatasetVisibility(datasetIndex, visible) { + _updateVisibility(datasetIndex, dataIndex, visible) { const me = this; const mode = visible ? 'show' : 'hide'; const meta = me.getDatasetMeta(datasetIndex); const anims = meta.controller._resolveAnimations(undefined, mode); - me.setDatasetVisibility(datasetIndex, visible); - // Animate visible state, so hide animation can be seen. This could be handled better if update / updateDataset returned a Promise. - anims.update(meta, {visible}); - - me.update((ctx) => ctx.datasetIndex === datasetIndex ? mode : undefined); + if (defined(dataIndex)) { + meta.data[dataIndex].hidden = !visible; + me.update(); + } else { + me.setDatasetVisibility(datasetIndex, visible); + // Animate visible state, so hide animation can be seen. This could be handled better if update / updateDataset returned a Promise. + anims.update(meta, {visible}); + me.update((ctx) => ctx.datasetIndex === datasetIndex ? mode : undefined); + } } - hide(datasetIndex) { - this._updateDatasetVisibility(datasetIndex, false); + hide(datasetIndex, dataIndex) { + this._updateVisibility(datasetIndex, dataIndex, false); } - show(datasetIndex) { - this._updateDatasetVisibility(datasetIndex, true); + show(datasetIndex, dataIndex) { + this._updateVisibility(datasetIndex, dataIndex, true); } /** diff --git a/src/core/core.datasetController.js b/src/core/core.datasetController.js index 048073a84..f504d3f5c 100644 --- a/src/core/core.datasetController.js +++ b/src/core/core.datasetController.js @@ -701,6 +701,9 @@ export default class DatasetController { for (i = start; i < start + count; ++i) { const element = elements[i]; + if (element.hidden) { + continue; + } if (element.active) { active.push(element); } else { diff --git a/test/fixtures/controller.doughnut/doughnut-hidden-single.js b/test/fixtures/controller.doughnut/doughnut-hidden-single.js new file mode 100644 index 000000000..80f0ee9f7 --- /dev/null +++ b/test/fixtures/controller.doughnut/doughnut-hidden-single.js @@ -0,0 +1,42 @@ +module.exports = { + config: { + type: 'doughnut', + data: { + labels: ['A', 'B', 'C', 'D', 'E'], + datasets: [{ + data: [1, 5, 10, 50, 100], + backgroundColor: [ + 'rgba(255, 99, 132, 0.8)', + 'rgba(54, 162, 235, 0.8)', + 'rgba(255, 206, 86, 0.8)', + 'rgba(75, 192, 192, 0.8)', + 'rgba(153, 102, 255, 0.8)' + ], + }, { + data: [1, 5, 10, 50, 100], + backgroundColor: [ + 'rgba(255, 99, 132, 0.8)', + 'rgba(54, 162, 235, 0.8)', + 'rgba(255, 206, 86, 0.8)', + 'rgba(75, 192, 192, 0.8)', + 'rgba(153, 102, 255, 0.8)' + ], + }] + }, + options: { + responsive: false, + plugins: { + legend: false, + title: false, + tooltip: false, + filler: false + } + }, + }, + options: { + run(chart) { + chart.hide(0, 4); + chart.hide(1, 2); + } + } +}; diff --git a/test/fixtures/controller.doughnut/doughnut-hidden-single.png b/test/fixtures/controller.doughnut/doughnut-hidden-single.png new file mode 100644 index 0000000000000000000000000000000000000000..5cfbe2c02d286c4de5bf528a7c20b0ae87080095 GIT binary patch literal 59100 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ℑ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