From 2533cc0d3cb7676206afdb768e0568b2324578fa Mon Sep 17 00:00:00 2001 From: Dave Kichler Date: Sat, 23 Mar 2019 02:25:17 -0700 Subject: [PATCH] Implement legend.align: 'start', 'center', 'end' (#6141) New `options.legend.align`config option for controlling alignment of legend blocks in horizontal/vertical legends. --- docs/configuration/legend.md | 9 + src/plugins/plugin.legend.js | 45 ++- ...end-doughnut-bottom-center-mulitiline.json | 25 ++ ...gend-doughnut-bottom-center-mulitiline.png | Bin 0 -> 12591 bytes .../legend-doughnut-bottom-center-single.json | 25 ++ .../legend-doughnut-bottom-center-single.png | Bin 0 -> 9368 bytes ...legend-doughnut-bottom-end-mulitiline.json | 25 ++ .../legend-doughnut-bottom-end-mulitiline.png | Bin 0 -> 11705 bytes ...gend-doughnut-bottom-start-mulitiline.json | 25 ++ ...egend-doughnut-bottom-start-mulitiline.png | Bin 0 -> 11619 bytes ...egend-doughnut-left-center-mulitiline.json | 25 ++ ...legend-doughnut-left-center-mulitiline.png | Bin 0 -> 14654 bytes .../legend-doughnut-left-center-single.json | 25 ++ .../legend-doughnut-left-center-single.png | Bin 0 -> 10147 bytes .../legend-doughnut-left-default-center.json | 24 ++ .../legend-doughnut-left-default-center.png | Bin 0 -> 11389 bytes .../legend-doughnut-left-end-mulitiline.json | 25 ++ .../legend-doughnut-left-end-mulitiline.png | Bin 0 -> 14613 bytes ...legend-doughnut-left-start-mulitiline.json | 25 ++ .../legend-doughnut-left-start-mulitiline.png | Bin 0 -> 14652 bytes ...gend-doughnut-right-center-mulitiline.json | 25 ++ ...egend-doughnut-right-center-mulitiline.png | Bin 0 -> 15047 bytes .../legend-doughnut-right-center-single.json | 25 ++ .../legend-doughnut-right-center-single.png | Bin 0 -> 10231 bytes .../legend-doughnut-right-default-center.json | 24 ++ .../legend-doughnut-right-default-center.png | Bin 0 -> 11375 bytes .../legend-doughnut-right-end-mulitiline.json | 25 ++ .../legend-doughnut-right-end-mulitiline.png | Bin 0 -> 15012 bytes ...egend-doughnut-right-start-mulitiline.json | 25 ++ ...legend-doughnut-right-start-mulitiline.png | Bin 0 -> 15000 bytes ...legend-doughnut-top-center-mulitiline.json | 25 ++ .../legend-doughnut-top-center-mulitiline.png | Bin 0 -> 12544 bytes .../legend-doughnut-top-center-single.json | 25 ++ .../legend-doughnut-top-center-single.png | Bin 0 -> 9360 bytes .../legend-doughnut-top-end-mulitiline.json | 25 ++ .../legend-doughnut-top-end-mulitiline.png | Bin 0 -> 11695 bytes .../legend-doughnut-top-start-mulitiline.json | 25 ++ .../legend-doughnut-top-start-mulitiline.png | Bin 0 -> 11604 bytes test/specs/plugin.legend.tests.js | 356 +----------------- 39 files changed, 491 insertions(+), 367 deletions(-) create mode 100644 test/fixtures/plugin.legend/legend-doughnut-bottom-center-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-bottom-center-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-bottom-center-single.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-bottom-center-single.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-bottom-end-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-bottom-end-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-bottom-start-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-bottom-start-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-center-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-center-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-center-single.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-center-single.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-default-center.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-default-center.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-end-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-end-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-start-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-left-start-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-center-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-center-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-center-single.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-center-single.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-default-center.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-default-center.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-end-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-end-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-start-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-right-start-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-top-center-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-top-center-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-top-center-single.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-top-center-single.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-top-end-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-top-end-mulitiline.png create mode 100644 test/fixtures/plugin.legend/legend-doughnut-top-start-mulitiline.json create mode 100644 test/fixtures/plugin.legend/legend-doughnut-top-start-mulitiline.png diff --git a/docs/configuration/legend.md b/docs/configuration/legend.md index c7d124868ed..f8ce7eb5a17 100644 --- a/docs/configuration/legend.md +++ b/docs/configuration/legend.md @@ -9,6 +9,7 @@ The legend configuration is passed into the `options.legend` namespace. The glob | ---- | ---- | ------- | ----------- | `display` | `boolean` | `true` | Is the legend shown? | `position` | `string` | `'top'` | Position of the legend. [more...](#position) +| `align` | `string` | `'center'` | Alignment of the legend. [more...](#align) | `fullWidth` | `boolean` | `true` | Marks that this box should take the full width of the canvas (pushing down other boxes). This is unlikely to need to be changed in day-to-day use. | `onClick` | `function` | | A callback that is called when a click event is registered on a label item. | `onHover` | `function` | | A callback that is called when a 'mousemove' event is registered on top of a label item. @@ -23,6 +24,14 @@ Position of the legend. Options are: * `'bottom'` * `'right'` +## Align +Alignment of the legend. Options are: +* `'start'` +* `'center'` +* `'end'` + +Defaults to `'center'` for unrecognized values. + ## Legend Label Configuration The legend label configuration is nested below the legend configuration using the `labels` key. diff --git a/src/plugins/plugin.legend.js b/src/plugins/plugin.legend.js index 2c6870b279d..d3fd5e35f04 100644 --- a/src/plugins/plugin.legend.js +++ b/src/plugins/plugin.legend.js @@ -12,6 +12,7 @@ defaults._set('global', { legend: { display: true, position: 'top', + align: 'center', fullWidth: true, reverse: false, weight: 1000, @@ -102,18 +103,19 @@ function getBoxWidth(labelOpts, fontSize) { var Legend = Element.extend({ initialize: function(config) { - helpers.extend(this, config); + var me = this; + helpers.extend(me, config); // Contains hit boxes for each dataset (in dataset order) - this.legendHitBoxes = []; + me.legendHitBoxes = []; /** * @private */ - this._hoveredItem = null; + me._hoveredItem = null; // Are we in doughnut mode which has a different data type - this.doughnutMode = false; + me.doughnutMode = false; }, // These methods are ordered by lifecycle. Utilities then follow. @@ -253,9 +255,9 @@ var Legend = Element.extend({ var boxWidth = getBoxWidth(labelOpts, fontSize); var width = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width; - if (i === 0 || lineWidths[lineWidths.length - 1] + width + labelOpts.padding > minSize.width) { + if (i === 0 || lineWidths[lineWidths.length - 1] + width + 2 * labelOpts.padding > minSize.width) { totalHeight += fontSize + labelOpts.padding; - lineWidths[lineWidths.length - (i > 0 ? 0 : 1)] = labelOpts.padding; + lineWidths[lineWidths.length - (i > 0 ? 0 : 1)] = 0; } // Store the hitbox width and height here. Final position will be updated in `draw` @@ -274,27 +276,27 @@ var Legend = Element.extend({ } else { var vPadding = labelOpts.padding; var columnWidths = me.columnWidths = []; + var columnHeights = me.columnHeights = []; var totalWidth = labelOpts.padding; var currentColWidth = 0; var currentColHeight = 0; - var itemHeight = fontSize + vPadding; helpers.each(me.legendItems, function(legendItem, i) { var boxWidth = getBoxWidth(labelOpts, fontSize); var itemWidth = boxWidth + (fontSize / 2) + ctx.measureText(legendItem.text).width; // If too tall, go to new column - if (i > 0 && currentColHeight + itemHeight > minSize.height - vPadding) { + if (i > 0 && currentColHeight + fontSize + 2 * vPadding > minSize.height) { totalWidth += currentColWidth + labelOpts.padding; columnWidths.push(currentColWidth); // previous column width - + columnHeights.push(currentColHeight); currentColWidth = 0; currentColHeight = 0; } // Get max width currentColWidth = Math.max(currentColWidth, itemWidth); - currentColHeight += itemHeight; + currentColHeight += fontSize + vPadding; // Store the hitbox width and height here. Final position will be updated in `draw` hitboxes[i] = { @@ -307,6 +309,7 @@ var Legend = Element.extend({ totalWidth += currentColWidth; columnWidths.push(currentColWidth); + columnHeights.push(currentColHeight); minSize.width += totalWidth; } } @@ -329,6 +332,8 @@ var Legend = Element.extend({ var globalDefaults = defaults.global; var defaultColor = globalDefaults.defaultColor; var lineDefault = globalDefaults.elements.line; + var legendHeight = me.height; + var columnHeights = me.columnHeights; var legendWidth = me.width; var lineWidths = me.lineWidths; @@ -408,18 +413,29 @@ var Legend = Element.extend({ } }; + var alignmentOffset = function(dimension, blockSize) { + switch (opts.align) { + case 'start': + return labelOpts.padding; + case 'end': + return dimension - blockSize; + default: // center + return (dimension - blockSize + labelOpts.padding) / 2; + } + }; + // Horizontal var isHorizontal = me.isHorizontal(); if (isHorizontal) { cursor = { - x: me.left + ((legendWidth - lineWidths[0]) / 2) + labelOpts.padding, + x: me.left + alignmentOffset(legendWidth, lineWidths[0]), y: me.top + labelOpts.padding, line: 0 }; } else { cursor = { x: me.left + labelOpts.padding, - y: me.top + labelOpts.padding, + y: me.top + alignmentOffset(legendHeight, columnHeights[0]), line: 0 }; } @@ -438,12 +454,12 @@ var Legend = Element.extend({ if (i > 0 && x + width + labelOpts.padding > me.left + me.minSize.width) { y = cursor.y += itemHeight; cursor.line++; - x = cursor.x = me.left + ((legendWidth - lineWidths[cursor.line]) / 2) + labelOpts.padding; + x = cursor.x = me.left + alignmentOffset(legendWidth, lineWidths[cursor.line]); } } else if (i > 0 && y + itemHeight > me.top + me.minSize.height) { x = cursor.x = x + me.columnWidths[cursor.line] + labelOpts.padding; - y = cursor.y = me.top + labelOpts.padding; cursor.line++; + y = cursor.y = me.top + alignmentOffset(legendHeight, columnHeights[cursor.line]); } drawLegendBox(x, y, legendItem); @@ -459,7 +475,6 @@ var Legend = Element.extend({ } else { cursor.y += itemHeight; } - }); } }, diff --git a/test/fixtures/plugin.legend/legend-doughnut-bottom-center-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-bottom-center-mulitiline.json new file mode 100644 index 00000000000..22837c7bc47 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-bottom-center-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 20, 10], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "bottom", + "align": "center" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-bottom-center-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-bottom-center-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..bad507684b41eb35d27479b0d3ed800cf572212a GIT binary patch literal 12591 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-bottom-center-single.json b/test/fixtures/plugin.legend/legend-doughnut-bottom-center-single.json new file mode 100644 index 00000000000..82e462f7da3 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-bottom-center-single.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": [""], + "datasets": [{ + "data": [10], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "bottom", + "align": "center" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-bottom-center-single.png b/test/fixtures/plugin.legend/legend-doughnut-bottom-center-single.png new file mode 100644 index 0000000000000000000000000000000000000000..139a16b863da35889d3d0d43aee09df43ead3cf0 GIT binary patch literal 9368 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 O_^~jtHLfzGUi?3^HanyM literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-bottom-end-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-bottom-end-mulitiline.json new file mode 100644 index 00000000000..630b81ee048 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-bottom-end-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "bottom", + "align": "end" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-bottom-end-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-bottom-end-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..e7fc84b85f05fe4c2ab6c31d4e3749c2fdbf29b3 GIT binary patch literal 11705 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 P4N_53S1h|{9`e5cHQpCS literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-bottom-start-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-bottom-start-mulitiline.json new file mode 100644 index 00000000000..4544602a147 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-bottom-start-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "bottom", + "align": "start" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-bottom-start-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-bottom-start-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..32700c17d8188ca27603439a78a2117127fa9974 GIT binary patch literal 11619 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-center-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-left-center-mulitiline.json new file mode 100644 index 00000000000..6665193f637 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-left-center-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10, 20, 30], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "left", + "align": "center" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-center-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-left-center-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..5160e356f74438a99b9511d4e5ce8a70166b6357 GIT binary patch literal 14654 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-center-single.json b/test/fixtures/plugin.legend/legend-doughnut-left-center-single.json new file mode 100644 index 00000000000..4723a860258 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-left-center-single.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": [""], + "datasets": [{ + "data": [10], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "left", + "align": "center" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-center-single.png b/test/fixtures/plugin.legend/legend-doughnut-left-center-single.png new file mode 100644 index 0000000000000000000000000000000000000000..72072bfbefd6344a2b6d9b4c2fa1995a2e4ffb0d GIT binary patch literal 10147 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-default-center.json b/test/fixtures/plugin.legend/legend-doughnut-left-default-center.json new file mode 100644 index 00000000000..bb48a2778b2 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-left-default-center.json @@ -0,0 +1,24 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "left" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-default-center.png b/test/fixtures/plugin.legend/legend-doughnut-left-default-center.png new file mode 100644 index 0000000000000000000000000000000000000000..3d9829833e2fbdf84c6cef698b122e8a1dd641d0 GIT binary patch literal 11389 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-end-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-left-end-mulitiline.json new file mode 100644 index 00000000000..662b16725f4 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-left-end-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10, 20, 30], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "left", + "align": "end" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-end-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-left-end-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..46c6014eb6a94f07934ebd602b5104c209be6325 GIT binary patch literal 14613 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-start-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-left-start-mulitiline.json new file mode 100644 index 00000000000..1d4dc1f7e6f --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-left-start-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10, 20, 30], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "left", + "align": "start" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-left-start-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-left-start-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..91c0c31b0a59c479635e606f7fdfb24e4a44f94e GIT binary patch literal 14652 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-right-center-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-right-center-mulitiline.json new file mode 100644 index 00000000000..5131989bdcd --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-right-center-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10, 20, 30], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "right", + "align": "center" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-right-center-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-right-center-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..72cbe903dc4bf1a6f3842a0871dc72516b2fbcf2 GIT binary patch literal 15047 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 Q5BgwcM%IS)r@hnu2geoYkN^Mx literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-right-default-center.json b/test/fixtures/plugin.legend/legend-doughnut-right-default-center.json new file mode 100644 index 00000000000..83762072036 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-right-default-center.json @@ -0,0 +1,24 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "right" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-right-default-center.png b/test/fixtures/plugin.legend/legend-doughnut-right-default-center.png new file mode 100644 index 0000000000000000000000000000000000000000..1ba7052ea0b130f31d333525a95a7e1ea92db04b GIT binary patch literal 11375 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 C`>iwp literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-right-end-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-right-end-mulitiline.json new file mode 100644 index 00000000000..183959b69e7 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-right-end-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10, 20, 30], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "right", + "align": "end" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-right-end-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-right-end-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..00e366460ea7efc3ae6d66cf095c137140c70adc GIT binary patch literal 15012 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

37(%UpZ%b|(L{gF%eOL&{Ei!qQt-K$q$N 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-top-end-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-top-end-mulitiline.json new file mode 100644 index 00000000000..b150ef789d0 --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-top-end-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "top", + "align": "end" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-top-end-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-top-end-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..e6e56e4701fbbe279bad14d581a878f1f4a1ae61 GIT binary patch literal 11695 zcmd72hgVZk^DdkQ1dtMtB8J|i2`D80P8ISVB=ig`jkhCLN?o3nGFb zMd>|)^dd@;&UfPLd++bN|G>R#owXqA>^XbSJkQLYnZ2X+bZ*j6u~C6QAevhmY6c(> z1o#&Wf|CP(IuiPvK_D*BEw$@LL3cLNDXYcQ1O7zt&%qeb`s4^_G#S%**m-)SG9v}d zM@K3JB|3*mq1WS$$@~OXrtrVeA;&P35cMwn`m-EzGMKs^;ZmU*m?Di##BFrrsOhKg zPq}GpLxOM&e zC>I6V?>}N_n1BYFmH>NJ#vS`tEDD$~UObqszRQe;ZMI@D>E!PA=<(3;ms{xB*4O?E zpk<0nOQT*b?qSz=F=@(LPl~e--X6$Jt*6fV{Wwm9a#7fx^7WYW`a*b*7OML~$Ez|q z61JT`drM0x*FYp*VmP?k!{kbx0ddfUK=Qs#>utkrzmMC7A|PMTlk}NG>@eMW#Z^68 z^tp(W@J|D=UKbCJgecIAsBnf)8c}J42}l$+Gplr6km7QiRJVZ2wxK0x0@Ag&8^cl} zUdX}q>)oYHSg&qxf9N}rJH9`Tho~?npgBRir;oZQOPDaM`;-&i;lXHuS2xDhT*6(+ z&?2DmmOH;9cgcpKeBsOsFS7uBUV8<0XvL*vT7UYasMc6auyP) z5oG?HPZv}6g@~{aDi&4u2BE%0A=JB&-hR0tO_>=U|Ci7Tc=y_$Y!WQ(eQ3Et$>ZIl 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 TBMP{P4Z5YSqgJM38~OhM1jDOF literal 0 HcmV?d00001 diff --git a/test/fixtures/plugin.legend/legend-doughnut-top-start-mulitiline.json b/test/fixtures/plugin.legend/legend-doughnut-top-start-mulitiline.json new file mode 100644 index 00000000000..ca2111922ab --- /dev/null +++ b/test/fixtures/plugin.legend/legend-doughnut-top-start-mulitiline.json @@ -0,0 +1,25 @@ +{ + "config": { + "type": "doughnut", + "data": { + "labels": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], + "datasets": [{ + "data": [10, 20, 30, 40, 50, 60, 70, 10, 20, 30, 40, 50, 60, 70, 10], + "backgroundColor": "#00ff00", + "borderWidth": 0 + }] + }, + "options": { + "legend": { + "position": "top", + "align": "start" + } + } + }, + "options": { + "canvas": { + "height": 256, + "width": 512 + } + } +} diff --git a/test/fixtures/plugin.legend/legend-doughnut-top-start-mulitiline.png b/test/fixtures/plugin.legend/legend-doughnut-top-start-mulitiline.png new file mode 100644 index 0000000000000000000000000000000000000000..2e7e7fe88aa591e4ee42f6efdc20a9935bb88b54 GIT binary patch literal 11604 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 l