diff --git a/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/common.ts b/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/common.ts index ce8120c407..78db1b304b 100644 --- a/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/common.ts +++ b/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/common.ts @@ -1,4 +1,5 @@ import { useI18n } from '@/hooks/web/useI18n' +import type { G2Spec } from '@antv/g2' const { t } = useI18n() @@ -61,3 +62,19 @@ export const PIE_AXIS_CONFIG: AxisConfig = { limit: 1 } } + +export const configSingleSectorScale = (options: G2Spec, data: any[]): G2Spec => { + if (data.length !== 1) { + return options + } + options.scale = { + ...options.scale, + x: { + ...options.scale?.x, + padding: 0, + paddingInner: 0, + paddingOuter: 0 + } + } + return options +} diff --git a/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/pie.ts b/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/pie.ts index 08da9db628..9015d9bf3d 100644 --- a/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/pie.ts +++ b/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/pie.ts @@ -11,6 +11,7 @@ import { PIE_EDITOR_PROPERTY, PIE_EDITOR_PROPERTY_INNER } from '@/views/chart/components/js/panel/charts/g2plot/pie/common' +import { configSingleSectorScale } from './common' import { getTooltipSeriesTotalMap, handleChartDashboardHidden, @@ -136,8 +137,9 @@ export class Pie extends G2ChartView { } data.push(initOtherItem) } - options.coordinate.outerRadius = basicStyle.radius / 100 - return options + const singleSectorOptions = configSingleSectorScale(options, data) + singleSectorOptions.coordinate.outerRadius = basicStyle.radius / 100 + return singleSectorOptions } protected configColor(chart: Chart, options: G2Spec): G2Spec { diff --git a/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/rose.ts b/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/rose.ts index bea860abfb..ea60f7b83c 100644 --- a/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/rose.ts +++ b/core/core-frontend/src/views/chart/components/js/panel/charts/g2/relation/pie/rose.ts @@ -11,6 +11,7 @@ import { PIE_EDITOR_PROPERTY, PIE_EDITOR_PROPERTY_INNER } from '@/views/chart/components/js/panel/charts/g2plot/pie/common' +import { configSingleSectorScale } from './common' import { getTooltipSeriesTotalMap, handleChartDashboardHidden, @@ -141,8 +142,9 @@ export class Rose extends G2ChartView { } data.push(initOtherItem) } - options.coordinate.outerRadius = basicStyle.radius / 100 - return options + const singleSectorOptions = configSingleSectorScale(options, data) + singleSectorOptions.coordinate.outerRadius = basicStyle.radius / 100 + return singleSectorOptions } protected configColor(chart: Chart, options: G2Spec): G2Spec {