From 8efdee582499d1051d4cf6f7ae71b8b2aae3cff0 Mon Sep 17 00:00:00 2001 From: iamzone Date: Wed, 1 Nov 2023 20:26:07 +0800 Subject: [PATCH 1/6] =?UTF-8?q?fix:=20=E4=B8=BAinterval=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=9C=80=E5=B0=8F=E9=AB=98=E5=BA=A6=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/shape/interval/color.ts | 20 ++++++++++++++++++-- src/shape/interval/rect.ts | 10 ++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/shape/interval/color.ts b/src/shape/interval/color.ts index 016b507312..e7afc3dd64 100644 --- a/src/shape/interval/color.ts +++ b/src/shape/interval/color.ts @@ -16,6 +16,16 @@ export type ColorOptions = { * Maximum width of each interval. */ maxWidth?: number; + + /** + * Minimum height of each interval. + */ + minHeight?: number; + + /** + * Minimum height of each interval. + */ + maxHeight?: number; [key: string]: any; }; @@ -40,6 +50,8 @@ export function rect( radiusTopRight = radius, minWidth = -Infinity, maxWidth = Infinity, + minHeight = -Infinity, + maxHeight = Infinity, ...rest } = style; if (!isPolar(coordinate) && !isHelix(coordinate)) { @@ -56,13 +68,13 @@ export function rect( const finalX = absX + insetLeft; const finalY = absY + insetTop; const finalWidth = absWidth - (insetLeft + insetRight); - const finalHeight = absHeight - (insetTop + insetBottom); + const finalHeight = absHeight - (insetTop + insetBottom) || minHeight; const clampWidth = tpShape ? finalWidth : clamp(finalWidth, minWidth, maxWidth); const clampHeight = tpShape - ? clamp(finalHeight, minWidth, maxWidth) + ? clamp(finalHeight, minHeight, maxHeight) : finalHeight; const clampX = finalX - (clampWidth - finalWidth) / 2; const clampY = finalY - (clampHeight - finalHeight) / 2; @@ -145,6 +157,8 @@ export const Color: SC = (options, context) => { insetTop = inset, minWidth, maxWidth, + minHeight, + maxHeight, ...rest } = style; const { color = defaultColor, opacity } = value; @@ -179,6 +193,8 @@ export const Color: SC = (options, context) => { insetTop, minWidth, maxWidth, + minHeight, + maxHeight, }; return ( diff --git a/src/shape/interval/rect.ts b/src/shape/interval/rect.ts index f27509d185..2babec6343 100644 --- a/src/shape/interval/rect.ts +++ b/src/shape/interval/rect.ts @@ -10,6 +10,16 @@ export type RectOptions = { * Maximum width of each interval. */ maxWidth?: number; + + /** + * Minimum height of each interval. + */ + minHeight?: number; + + /** + * Minimum height of each interval. + */ + maxHeight?: number; }; /** From 78419ee45d5c84a25dba890827f9220bf3e62415 Mon Sep 17 00:00:00 2001 From: Runtus <893119806@qq.com> Date: Thu, 2 Nov 2023 16:04:09 +0800 Subject: [PATCH 2/6] fix: fix the inverted rect display --- src/shape/interval/color.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/shape/interval/color.ts b/src/shape/interval/color.ts index e7afc3dd64..12701eb9d0 100644 --- a/src/shape/interval/color.ts +++ b/src/shape/interval/color.ts @@ -63,12 +63,18 @@ export function rect( // Deal with width or height is negative. const absX = width > 0 ? x : x + width; const absY = height > 0 ? y : y + height; + + // the diff between height and minHeight + const heightDiff = minHeight - height; + // when data is 0, minHeight get actions. + + const isMinHeight = heightDiff > 0 && height === 0 ? true : false; const absWidth = Math.abs(width); - const absHeight = Math.abs(height); + const absHeight = Math.abs(isMinHeight ? minHeight : height); const finalX = absX + insetLeft; - const finalY = absY + insetTop; + const finalY = isMinHeight ? absY + insetTop - heightDiff : absY + insetTop; const finalWidth = absWidth - (insetLeft + insetRight); - const finalHeight = absHeight - (insetTop + insetBottom) || minHeight; + const finalHeight = absHeight - (insetTop + insetBottom); const clampWidth = tpShape ? finalWidth From 753f057076d8397c73bd1f5c6b0fcd3eddec5763 Mon Sep 17 00:00:00 2001 From: Runtus <893119806@qq.com> Date: Fri, 3 Nov 2023 16:28:43 +0800 Subject: [PATCH 3/6] fix: fit horizontal direction minHeight, and change code style --- src/shape/interval/color.ts | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/shape/interval/color.ts b/src/shape/interval/color.ts index 12701eb9d0..0fb71d043d 100644 --- a/src/shape/interval/color.ts +++ b/src/shape/interval/color.ts @@ -64,26 +64,21 @@ export function rect( const absX = width > 0 ? x : x + width; const absY = height > 0 ? y : y + height; - // the diff between height and minHeight - const heightDiff = minHeight - height; - // when data is 0, minHeight get actions. - - const isMinHeight = heightDiff > 0 && height === 0 ? true : false; const absWidth = Math.abs(width); - const absHeight = Math.abs(isMinHeight ? minHeight : height); + const absHeight = Math.abs(height); const finalX = absX + insetLeft; - const finalY = isMinHeight ? absY + insetTop - heightDiff : absY + insetTop; + const finalY = absY + insetTop; const finalWidth = absWidth - (insetLeft + insetRight); const finalHeight = absHeight - (insetTop + insetBottom); const clampWidth = tpShape - ? finalWidth + ? clamp(finalWidth, minHeight, maxHeight) : clamp(finalWidth, minWidth, maxWidth); const clampHeight = tpShape - ? clamp(finalHeight, minHeight, maxHeight) - : finalHeight; - const clampX = finalX - (clampWidth - finalWidth) / 2; - const clampY = finalY - (clampHeight - finalHeight) / 2; + ? clamp(finalHeight, minWidth, maxWidth) + : clamp(finalHeight, minHeight, maxHeight); + const clampX = tpShape ? finalX : finalX - (clampWidth - finalWidth) / 2; + const clampY = tpShape ? finalY - (clampHeight - finalHeight ) / 2 : finalY - (clampHeight - finalHeight); return select(document.createElement('rect', {})) .style('x', clampX) From 28735cfa3a86665016c1ff6eb85f9e5f66d822cc Mon Sep 17 00:00:00 2001 From: Runtus <893119806@qq.com> Date: Fri, 3 Nov 2023 17:33:12 +0800 Subject: [PATCH 4/6] fix: add minHeight test --- ...lphanbet-interval-min-height-transposed.ts | 29 +++++++++++++++++++ .../static/alphanbet-interval-min-height.ts | 28 ++++++++++++++++++ __tests__/plots/static/index.ts | 2 ++ site/docs/spec/mark/interval.zh.md | 1 + .../general/interval/demo/column-minHeight.ts | 20 +++++++++++++ src/shape/interval/color.ts | 13 ++------- 6 files changed, 83 insertions(+), 10 deletions(-) create mode 100644 __tests__/plots/static/alphanbet-interval-min-height-transposed.ts create mode 100644 __tests__/plots/static/alphanbet-interval-min-height.ts create mode 100644 site/examples/general/interval/demo/column-minHeight.ts diff --git a/__tests__/plots/static/alphanbet-interval-min-height-transposed.ts b/__tests__/plots/static/alphanbet-interval-min-height-transposed.ts new file mode 100644 index 0000000000..29c87594db --- /dev/null +++ b/__tests__/plots/static/alphanbet-interval-min-height-transposed.ts @@ -0,0 +1,29 @@ +import { G2Spec } from '../../../src'; + +export function alphabetIntervalMinHeightTransposed(): G2Spec { + return { + type: 'interval', + coordinate: { transform: [{ type: 'transpose' }] }, + data: [ + { genre: 'Sports', sold: 0 }, + { genre: 'Strategy', sold: 115 }, + { genre: 'Action', sold: 120 }, + { genre: 'Shooter', sold: 350 }, + { genre: 'Other', sold: 150 }, + ], + encode: { + x: "genre", + y: "sold", + color: "genre" + }, + axis: { + x: { animate: false }, + y: { animate: false } + }, + style: { + draggable: true, + droppable: true, + minHeight: 50 + } + }; +} diff --git a/__tests__/plots/static/alphanbet-interval-min-height.ts b/__tests__/plots/static/alphanbet-interval-min-height.ts new file mode 100644 index 0000000000..4b356056e2 --- /dev/null +++ b/__tests__/plots/static/alphanbet-interval-min-height.ts @@ -0,0 +1,28 @@ +import { G2Spec } from '../../../src'; + +export function alphabetIntervalMinHeight(): G2Spec { + return { + type: 'interval', + data: [ + { genre: 'Sports', sold: 0 }, + { genre: 'Strategy', sold: 115 }, + { genre: 'Action', sold: 120 }, + { genre: 'Shooter', sold: 350 }, + { genre: 'Other', sold: 150 }, + ], + encode: { + x: "genre", + y: "sold", + color: "genre" + }, + axis: { + x: { animate: false }, + y: { animate: false } + }, + style: { + draggable: true, + droppable: true, + minHeight: 50 + } + }; +} diff --git a/__tests__/plots/static/index.ts b/__tests__/plots/static/index.ts index ab2985742b..27689fde7e 100644 --- a/__tests__/plots/static/index.ts +++ b/__tests__/plots/static/index.ts @@ -4,6 +4,8 @@ export { alphabetIntervalMaxWidth } from './alphabet-interval-max-width'; export { alphabetIntervalMinWidth } from './alphabet-interval-min-width'; export { alphabetIntervalMaxWidthTransposed } from './alphabet-interval-max-width-transposed'; export { alphabetIntervalMinWidthTransposed } from './alphabet-interval-min-width-transposed'; +export { alphabetIntervalMinHeight } from './alphanbet-interval-min-height' +export { alphabetIntervalMinHeightTransposed } from './alphanbet-interval-min-height-transposed' export { alphabetIntervalTitle } from './alphabet-interval-title'; export { alphabetIntervalLabelOverflowHide } from './alphabet-interval-label-overflow-hide'; export { alphabetIntervalLabelContrastReverse } from './alphabet-interval-label-contrast-reverse'; diff --git a/site/docs/spec/mark/interval.zh.md b/site/docs/spec/mark/interval.zh.md index 70fd1cd930..83a7d9f929 100644 --- a/site/docs/spec/mark/interval.zh.md +++ b/site/docs/spec/mark/interval.zh.md @@ -63,6 +63,7 @@ chart.render(); | ---------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- | --------- | | minWidth | 柱子的最小宽度,单位为像素 | `number` | `-Infinity` | | maxWidth | 柱子的最大宽度,单位为像素 | `number` | `Infinity` | +| minHeight | 柱子的最小高度,单位为像素 | `number` | `-Infinity` | | radius | 外层矩形的四个圆角大小 | `number` \| `Function` | 0 | | radiusTopLeft | 外层左上角的圆角 | `number` \| `Function` | 0 | | radiusTopRight | 外层右上角的圆角 | `number` \| `Function` | 0 | diff --git a/site/examples/general/interval/demo/column-minHeight.ts b/site/examples/general/interval/demo/column-minHeight.ts new file mode 100644 index 0000000000..848e77f378 --- /dev/null +++ b/site/examples/general/interval/demo/column-minHeight.ts @@ -0,0 +1,20 @@ +import { Chart } from '@antv/g2'; + +const chart = new Chart({ container: 'container' }); +chart.data([ + { genre: 'Sports', sold: 0 }, + { genre: 'Strategy', sold: 115 }, + { genre: 'Action', sold: 120 }, + { genre: 'Shooter', sold: 350 }, + { genre: 'Other', sold: 150 }, +]); + +chart + .interval() + .encode('x', 'genre') + .encode('y', 'sold') + .encode('color', 'genre') + .axis({ x: { animate: false }, y: { animate: false } }) + .style('draggable', true) + .style('droppable', true) + .style('minHeight', 50); diff --git a/src/shape/interval/color.ts b/src/shape/interval/color.ts index 0fb71d043d..9a7203849c 100644 --- a/src/shape/interval/color.ts +++ b/src/shape/interval/color.ts @@ -22,10 +22,6 @@ export type ColorOptions = { */ minHeight?: number; - /** - * Minimum height of each interval. - */ - maxHeight?: number; [key: string]: any; }; @@ -51,7 +47,6 @@ export function rect( minWidth = -Infinity, maxWidth = Infinity, minHeight = -Infinity, - maxHeight = Infinity, ...rest } = style; if (!isPolar(coordinate) && !isHelix(coordinate)) { @@ -72,11 +67,11 @@ export function rect( const finalHeight = absHeight - (insetTop + insetBottom); const clampWidth = tpShape - ? clamp(finalWidth, minHeight, maxHeight) + ? clamp(finalWidth, minHeight, Infinity) : clamp(finalWidth, minWidth, maxWidth); const clampHeight = tpShape ? clamp(finalHeight, minWidth, maxWidth) - : clamp(finalHeight, minHeight, maxHeight); + : clamp(finalHeight, minHeight, Infinity); const clampX = tpShape ? finalX : finalX - (clampWidth - finalWidth) / 2; const clampY = tpShape ? finalY - (clampHeight - finalHeight ) / 2 : finalY - (clampHeight - finalHeight); @@ -159,7 +154,6 @@ export const Color: SC = (options, context) => { minWidth, maxWidth, minHeight, - maxHeight, ...rest } = style; const { color = defaultColor, opacity } = value; @@ -194,8 +188,7 @@ export const Color: SC = (options, context) => { insetTop, minWidth, maxWidth, - minHeight, - maxHeight, + minHeight }; return ( From 710aad4b55d56bf5a6f5b1c3faa40ba548aef182 Mon Sep 17 00:00:00 2001 From: Runtus <893119806@qq.com> Date: Fri, 3 Nov 2023 20:08:54 +0800 Subject: [PATCH 5/6] fix: add snapshot --- .../static/alphabetIntervalMinHeight.png | Bin 0 -> 16729 bytes .../alphabetIntervalMinHeightTransposed.png | Bin 0 -> 17786 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 __tests__/integration/snapshots/static/alphabetIntervalMinHeight.png create mode 100644 __tests__/integration/snapshots/static/alphabetIntervalMinHeightTransposed.png diff --git a/__tests__/integration/snapshots/static/alphabetIntervalMinHeight.png b/__tests__/integration/snapshots/static/alphabetIntervalMinHeight.png new file mode 100644 index 0000000000000000000000000000000000000000..412858c2933c0dbaa59948e243755c253d5c6e37 GIT binary patch literal 16729 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 Zq%Mj+zbw*H2qPYZJW_jDeBboh{{_cI-rxWL literal 0 HcmV?d00001 From 98822992ba4d03500f5e789a49f0e634b65b87f3 Mon Sep 17 00:00:00 2001 From: Runtus <893119806@qq.com> Date: Mon, 6 Nov 2023 14:50:40 +0800 Subject: [PATCH 6/6] fix: cancel the maxHeight type and format the code style --- ...lphanbet-interval-min-height-transposed.ts | 28 +++++++++---------- .../static/alphanbet-interval-min-height.ts | 28 +++++++++---------- __tests__/plots/static/index.ts | 4 +-- src/shape/interval/color.ts | 6 ++-- src/shape/interval/rect.ts | 5 ---- 5 files changed, 34 insertions(+), 37 deletions(-) diff --git a/__tests__/plots/static/alphanbet-interval-min-height-transposed.ts b/__tests__/plots/static/alphanbet-interval-min-height-transposed.ts index 29c87594db..abb7a0a38d 100644 --- a/__tests__/plots/static/alphanbet-interval-min-height-transposed.ts +++ b/__tests__/plots/static/alphanbet-interval-min-height-transposed.ts @@ -11,19 +11,19 @@ export function alphabetIntervalMinHeightTransposed(): G2Spec { { genre: 'Shooter', sold: 350 }, { genre: 'Other', sold: 150 }, ], - encode: { - x: "genre", - y: "sold", - color: "genre" - }, - axis: { - x: { animate: false }, - y: { animate: false } - }, - style: { - draggable: true, - droppable: true, - minHeight: 50 - } + encode: { + x: 'genre', + y: 'sold', + color: 'genre', + }, + axis: { + x: { animate: false }, + y: { animate: false }, + }, + style: { + draggable: true, + droppable: true, + minHeight: 50, + }, }; } diff --git a/__tests__/plots/static/alphanbet-interval-min-height.ts b/__tests__/plots/static/alphanbet-interval-min-height.ts index 4b356056e2..80a0219c2a 100644 --- a/__tests__/plots/static/alphanbet-interval-min-height.ts +++ b/__tests__/plots/static/alphanbet-interval-min-height.ts @@ -10,19 +10,19 @@ export function alphabetIntervalMinHeight(): G2Spec { { genre: 'Shooter', sold: 350 }, { genre: 'Other', sold: 150 }, ], - encode: { - x: "genre", - y: "sold", - color: "genre" - }, - axis: { - x: { animate: false }, - y: { animate: false } - }, - style: { - draggable: true, - droppable: true, - minHeight: 50 - } + encode: { + x: 'genre', + y: 'sold', + color: 'genre', + }, + axis: { + x: { animate: false }, + y: { animate: false }, + }, + style: { + draggable: true, + droppable: true, + minHeight: 50, + }, }; } diff --git a/__tests__/plots/static/index.ts b/__tests__/plots/static/index.ts index 27689fde7e..b38d3fbe33 100644 --- a/__tests__/plots/static/index.ts +++ b/__tests__/plots/static/index.ts @@ -4,8 +4,8 @@ export { alphabetIntervalMaxWidth } from './alphabet-interval-max-width'; export { alphabetIntervalMinWidth } from './alphabet-interval-min-width'; export { alphabetIntervalMaxWidthTransposed } from './alphabet-interval-max-width-transposed'; export { alphabetIntervalMinWidthTransposed } from './alphabet-interval-min-width-transposed'; -export { alphabetIntervalMinHeight } from './alphanbet-interval-min-height' -export { alphabetIntervalMinHeightTransposed } from './alphanbet-interval-min-height-transposed' +export { alphabetIntervalMinHeight } from './alphanbet-interval-min-height'; +export { alphabetIntervalMinHeightTransposed } from './alphanbet-interval-min-height-transposed'; export { alphabetIntervalTitle } from './alphabet-interval-title'; export { alphabetIntervalLabelOverflowHide } from './alphabet-interval-label-overflow-hide'; export { alphabetIntervalLabelContrastReverse } from './alphabet-interval-label-contrast-reverse'; diff --git a/src/shape/interval/color.ts b/src/shape/interval/color.ts index 9a7203849c..a2d6d74f8e 100644 --- a/src/shape/interval/color.ts +++ b/src/shape/interval/color.ts @@ -73,7 +73,9 @@ export function rect( ? clamp(finalHeight, minWidth, maxWidth) : clamp(finalHeight, minHeight, Infinity); const clampX = tpShape ? finalX : finalX - (clampWidth - finalWidth) / 2; - const clampY = tpShape ? finalY - (clampHeight - finalHeight ) / 2 : finalY - (clampHeight - finalHeight); + const clampY = tpShape + ? finalY - (clampHeight - finalHeight) / 2 + : finalY - (clampHeight - finalHeight); return select(document.createElement('rect', {})) .style('x', clampX) @@ -188,7 +190,7 @@ export const Color: SC = (options, context) => { insetTop, minWidth, maxWidth, - minHeight + minHeight, }; return ( diff --git a/src/shape/interval/rect.ts b/src/shape/interval/rect.ts index 2babec6343..50b2dd3a9b 100644 --- a/src/shape/interval/rect.ts +++ b/src/shape/interval/rect.ts @@ -15,11 +15,6 @@ export type RectOptions = { * Minimum height of each interval. */ minHeight?: number; - - /** - * Minimum height of each interval. - */ - maxHeight?: number; }; /**