Skip to content

Commit f2e2ab9

Browse files
Merge pull request dataease#11223 from dataease/pr@dev-v2@chart-flow-map-end-name-fix
fix(图表-流向地图): 修复流向地图设置显示终点名称无效的问题
2 parents 3299caa + fe484f8 commit f2e2ab9

File tree

4 files changed

+54
-113
lines changed

4 files changed

+54
-113
lines changed

core/core-backend/src/main/java/io/dataease/chart/charts/impl/map/FlowMapHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public AxisFormatResult formatAxis(ChartViewDTO view) {
1919
var result = super.formatAxis(view);
2020
var xAxis = result.getAxisMap().get(ChartAxis.xAxis);
2121
xAxis.addAll(Optional.ofNullable(view.getFlowMapStartName()).orElse(new ArrayList<>()));
22-
xAxis.addAll(Optional.ofNullable(view.getFlowMapStartName()).orElse(new ArrayList<>()));
22+
xAxis.addAll(Optional.ofNullable(view.getFlowMapEndName()).orElse(new ArrayList<>()));
2323
result.getAxisMap().put(ChartAxis.xAxis, xAxis);
2424
return result;
2525
}

core/core-frontend/src/views/chart/components/editor/editor-senior/Senior.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,8 @@ const SENIOR_PROP: EditorProperty[] = [
162162
'scroll-cfg',
163163
'threshold',
164164
'jump-set',
165-
'linkage'
165+
'linkage',
166+
'bubble-animate'
166167
]
167168
const noSenior = computed(() => {
168169
return !includesAny(properties.value, ...SENIOR_PROP)

core/core-frontend/src/views/chart/components/editor/editor-style/components/FlowMapPointSelector.vue

Lines changed: 37 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,8 @@
11
<script lang="tsx" setup>
22
import { computed, onMounted, PropType, reactive, watch } from 'vue'
33
import { useI18n } from '@/hooks/web/useI18n'
4-
import {
5-
COLOR_PANEL,
6-
DEFAULT_BASIC_STYLE,
7-
DEFAULT_MISC
8-
} from '@/views/chart/components/editor/util/chart'
4+
import { COLOR_PANEL, DEFAULT_MISC } from '@/views/chart/components/editor/util/chart'
95
import { dvMainStoreWithOut } from '@/store/modules/data-visualization/dvMain'
10-
import { cloneDeep, defaultsDeep } from 'lodash-es'
116
import { ElSpace } from 'element-plus-secondary'
127
138
const { t } = useI18n()
@@ -87,88 +82,58 @@ onMounted(() => {
8782

8883
<template>
8984
<el-form ref="pointForm" :model="state.pointForm" size="small" label-position="top">
90-
<el-space>
91-
<el-form-item class="form-item" :class="'form-item-' + themes" :label="t('chart.text')">
92-
<el-color-picker
93-
:effect="themes"
94-
v-model="state.pointForm.text.color"
95-
class="color-picker-style"
96-
:predefine="predefineColors"
97-
@change="changeStyle()"
98-
is-custom
99-
/>
100-
</el-form-item>
101-
102-
<el-form-item class="form-item" :class="'form-item-' + themes">
103-
<template #label>&nbsp;</template>
104-
<el-tooltip content="字号" :effect="toolTip" placement="top">
105-
<el-select
106-
size="small"
107-
style="width: 108px"
85+
<div>
86+
<el-space>
87+
<el-form-item class="form-item" :class="'form-item-' + themes" :label="t('chart.text')">
88+
<el-color-picker
10889
:effect="themes"
109-
v-model.number="state.pointForm.text.fontSize"
110-
:placeholder="t('chart.text_fontsize')"
90+
size="default"
91+
v-model="state.pointForm.text.color"
92+
class="color-picker-style"
93+
:predefine="predefineColors"
11194
@change="changeStyle()"
112-
>
113-
<el-option
114-
v-for="option in fontSizeList"
115-
:key="option.value"
116-
:label="option.name"
117-
:value="option.value"
118-
/>
119-
</el-select>
120-
</el-tooltip>
121-
</el-form-item>
122-
</el-space>
95+
is-custom
96+
/>
97+
</el-form-item>
98+
99+
<el-form-item class="form-item" :class="'form-item-' + themes">
100+
<template #label>&nbsp;</template>
101+
<el-tooltip content="字号" :effect="toolTip" placement="top">
102+
<el-select
103+
size="small"
104+
style="width: 108px"
105+
:effect="themes"
106+
v-model.number="state.pointForm.text.fontSize"
107+
:placeholder="t('chart.text_fontsize')"
108+
@change="changeStyle()"
109+
>
110+
<el-option
111+
v-for="option in fontSizeList"
112+
:key="option.value"
113+
:label="option.name"
114+
:value="option.value"
115+
/>
116+
</el-select>
117+
</el-tooltip>
118+
</el-form-item>
119+
</el-space>
120+
</div>
123121
<div class="alpha-setting">
124-
<label class="alpha-label" :class="{ dark: 'dark' === themes }"> 标注点大小 </label>
122+
<label class="alpha-label" :class="{ dark: 'dark' === themes }"> 标注点气泡大小 </label>
125123
<el-row style="flex: 1">
126124
<el-col>
127125
<el-form-item class="form-item alpha-slider" :class="'form-item-' + themes">
128126
<el-slider
129127
:effect="themes"
130128
:min="0"
131-
:max="5"
129+
:max="20"
132130
v-model="state.pointForm.point.size"
133131
@change="changeStyle()"
134132
/>
135133
</el-form-item>
136134
</el-col>
137135
</el-row>
138136
</div>
139-
<div class="alpha-setting">
140-
<el-row style="flex: 1">
141-
<el-col>
142-
<el-form-item class="form-item" :class="'form-item-' + themes">
143-
<el-checkbox
144-
:effect="themes"
145-
@change="changeStyle()"
146-
v-model="state.pointForm.point.animate"
147-
>
148-
标注点动画
149-
</el-checkbox>
150-
</el-form-item>
151-
</el-col>
152-
<el-col>
153-
<div class="alpha-setting" v-if="state.pointForm.point.animate">
154-
<label class="alpha-label" :class="{ dark: 'dark' === themes }"> 闪烁频率 </label>
155-
<el-row style="flex: 1">
156-
<el-col>
157-
<el-form-item class="form-item alpha-slider" :class="'form-item-' + themes">
158-
<el-slider
159-
:effect="themes"
160-
:min="1"
161-
:max="5"
162-
v-model="state.pointForm.point.speed"
163-
@change="changeStyle()"
164-
/>
165-
</el-form-item>
166-
</el-col>
167-
</el-row>
168-
</div>
169-
</el-col>
170-
</el-row>
171-
</div>
172137
</el-form>
173138
</template>
174139

core/core-frontend/src/views/chart/components/js/panel/charts/map/flow-map.ts

Lines changed: 14 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ export class FlowMap extends L7ChartView<Scene, L7Config> {
2424
'basic-style-selector',
2525
'title-selector',
2626
'flow-map-line-selector',
27-
'flow-map-point-selector'
27+
'flow-map-point-selector',
28+
'bubble-animate'
2829
]
2930
propertyInner: EditorPropertyInner = {
3031
...MAP_EDITOR_PROPERTY_INNER,
@@ -259,8 +260,7 @@ export class FlowMap extends L7ChartView<Scene, L7Config> {
259260
pointConfig = (chart, xAxis, xAxisExt, misc, configList) => {
260261
const color = misc.flowMapConfig.pointConfig.text.color
261262
const size = misc.flowMapConfig.pointConfig.point.size
262-
const animate = misc.flowMapConfig.pointConfig.point.animate
263-
const speed = misc.flowMapConfig.pointConfig.point.speed
263+
const { bubbleCfg } = parseJson(chart.senior)
264264
const fromDefaultPointLayer = new PointLayer({ zIndex: -1 })
265265
.source(chart.data?.tableRow, {
266266
parser: {
@@ -275,23 +275,6 @@ export class FlowMap extends L7ChartView<Scene, L7Config> {
275275
.style({
276276
blur: 0.6
277277
})
278-
configList.push(fromDefaultPointLayer)
279-
const fromAnimatePointLayer = new PointLayer({ zIndex: -1 })
280-
.source(chart.data?.tableRow, {
281-
parser: {
282-
type: 'json',
283-
x: xAxis[0].dataeaseName,
284-
y: xAxis[1].dataeaseName
285-
}
286-
})
287-
.shape('circle')
288-
.size(20)
289-
.color(color)
290-
.animate({
291-
enable: true,
292-
speed: speed,
293-
rings: 0.01
294-
})
295278
const toDefaultPointLayer = new PointLayer({ zIndex: -1 })
296279
.source(chart.data?.tableRow, {
297280
parser: {
@@ -306,27 +289,19 @@ export class FlowMap extends L7ChartView<Scene, L7Config> {
306289
.style({
307290
blur: 0.6
308291
})
309-
configList.push(toDefaultPointLayer)
310-
const toAnimatePointLayer = new PointLayer({ zIndex: -1 })
311-
.source(chart.data?.tableRow, {
312-
parser: {
313-
type: 'json',
314-
x: xAxisExt[0].dataeaseName,
315-
y: xAxisExt[1].dataeaseName
316-
}
317-
})
318-
.shape('circle')
319-
.size(20)
320-
.color(color)
321-
.animate({
292+
if (bubbleCfg && bubbleCfg.enable) {
293+
const animate = {
322294
enable: true,
323-
speed: speed,
324-
rings: 0.01
325-
})
326-
if (animate) {
327-
configList.push(fromAnimatePointLayer)
328-
configList.push(toAnimatePointLayer)
295+
speed: bubbleCfg.speed,
296+
rings: bubbleCfg.rings
297+
}
298+
fromDefaultPointLayer.size(size * 2)
299+
fromDefaultPointLayer.animate(animate)
300+
toDefaultPointLayer.size(size * 2)
301+
toDefaultPointLayer.animate(animate)
329302
}
303+
configList.push(fromDefaultPointLayer)
304+
configList.push(toDefaultPointLayer)
330305
}
331306

332307
setupDefaultOptions(chart: ChartObj): ChartObj {

0 commit comments

Comments
 (0)