diff --git a/core/core-frontend/src/views/chart/components/js/panel/charts/map/bubble-map.ts b/core/core-frontend/src/views/chart/components/js/panel/charts/map/bubble-map.ts index 4d17ae08f5..c04b42d228 100644 --- a/core/core-frontend/src/views/chart/components/js/panel/charts/map/bubble-map.ts +++ b/core/core-frontend/src/views/chart/components/js/panel/charts/map/bubble-map.ts @@ -135,7 +135,7 @@ export class BubbleMap extends L7PlotChartView { }) dotLayer.once('loaded', () => { chart.container = container - configCarouselTooltip(chart, view, chart.data?.data || [], null) + configCarouselTooltip(chart, view, chart.data?.data || [], null, areaId) }) }) return view diff --git a/core/core-frontend/src/views/chart/components/js/panel/charts/map/map.ts b/core/core-frontend/src/views/chart/components/js/panel/charts/map/map.ts index b67ec32794..b6690065c3 100644 --- a/core/core-frontend/src/views/chart/components/js/panel/charts/map/map.ts +++ b/core/core-frontend/src/views/chart/components/js/panel/charts/map/map.ts @@ -178,7 +178,7 @@ export class Map extends L7PlotChartView { }) }) chart.container = container - configCarouselTooltip(chart, view, data, null) + configCarouselTooltip(chart, view, data, null, areaId) }) return view } diff --git a/core/core-frontend/src/views/chart/components/js/panel/charts/map/tooltip-carousel.ts b/core/core-frontend/src/views/chart/components/js/panel/charts/map/tooltip-carousel.ts index ae451b5940..5a0f2fb1d9 100644 --- a/core/core-frontend/src/views/chart/components/js/panel/charts/map/tooltip-carousel.ts +++ b/core/core-frontend/src/views/chart/components/js/panel/charts/map/tooltip-carousel.ts @@ -6,16 +6,18 @@ import { parseJson } from '@/views/chart/components/js/util' import { Scene } from '@antv/l7-scene' import { deepCopy } from '@/utils/utils' -export const configCarouselTooltip = (chart, view, data, scene) => { +export const configCarouselTooltip = (chart, view, data, scene, areaId?) => { if (['bubble-map', 'map'].includes(chart.type)) { data = view.source.data.dataArray ?.filter(i => i.dimensionList?.length > 0) .reduce((acc, current) => { const existingItem = acc.find(obj => { - if (!obj.abbrev || obj.abbrev === 'China') { + if (areaId.startsWith('000')) { + return obj.name === current.name + } else if (areaId.startsWith('156')) { return obj.adcode === current.adcode } else { - return obj.abbrev === current.abbrev + return obj.name === current.name } }) if (!existingItem) {