diff --git a/core/core-frontend/src/views/chart/components/editor/editor-style/components/SymbolicStyleSelector.vue b/core/core-frontend/src/views/chart/components/editor/editor-style/components/SymbolicStyleSelector.vue
index 9e32eac0f9..f1d15f4d20 100644
--- a/core/core-frontend/src/views/chart/components/editor/editor-style/components/SymbolicStyleSelector.vue
+++ b/core/core-frontend/src/views/chart/components/editor/editor-style/components/SymbolicStyleSelector.vue
@@ -1,9 +1,10 @@
@@ -317,4 +349,91 @@ const mapCustomRangeValidate = prop => {
flex-direction: row;
align-items: center;
}
+.avatar-uploader-container {
+ :deep(.ed-upload--picture-card) {
+ background: #eff0f1;
+ border: 1px dashed #dee0e3;
+ border-radius: 4px;
+
+ .ed-icon {
+ color: #1f2329;
+ }
+
+ &:hover {
+ .ed-icon {
+ color: var(--ed-color-primary);
+ }
+ }
+ }
+
+ &.img-area_dark {
+ :deep(.ed-upload-list__item).is-ready {
+ border-color: #434343;
+ }
+ :deep(.ed-upload--picture-card) {
+ background: #373737;
+ border-color: #434343;
+ .ed-icon {
+ color: #ebebeb;
+ }
+ }
+ }
+
+ &.img-area_light {
+ :deep(.ed-upload-list__item).is-ready {
+ border-color: #dee0e3;
+ }
+ }
+ :deep(.ed-upload-list__item-preview) {
+ display: none !important;
+ }
+ :deep(.ed-upload-list__item-delete) {
+ margin-left: 0 !important;
+ }
+ :deep(.ed-upload-list__item-status-label) {
+ display: none !important;
+ }
+ :deep(.ed-icon--close-tip) {
+ display: none !important;
+ }
+}
+.avatar-uploader {
+ width: 90px;
+ height: 80px;
+ overflow: hidden;
+}
+.avatar-uploader {
+ width: 90px;
+ :deep(.ed-upload) {
+ width: 80px;
+ height: 80px;
+ line-height: 90px;
+ }
+
+ :deep(.ed-upload-list li) {
+ width: 80px !important;
+ height: 80px !important;
+ }
+
+ :deep(.ed-upload--picture-card) {
+ background: #eff0f1;
+ border: 1px dashed #dee0e3;
+ border-radius: 4px;
+
+ .ed-icon {
+ color: #1f2329;
+ }
+
+ &:hover {
+ .ed-icon {
+ color: var(--ed-color-primary);
+ }
+ }
+ }
+}
+.uploader {
+ :deep(.ed-form-item__content) {
+ justify-content: center;
+ }
+}
diff --git a/core/core-frontend/src/views/chart/components/js/panel/charts/map/symbolic-map.ts b/core/core-frontend/src/views/chart/components/js/panel/charts/map/symbolic-map.ts
index e752aaf600..e12fa58245 100644
--- a/core/core-frontend/src/views/chart/components/js/panel/charts/map/symbolic-map.ts
+++ b/core/core-frontend/src/views/chart/components/js/panel/charts/map/symbolic-map.ts
@@ -246,8 +246,12 @@ export class SymbolicMap extends L7ChartView {
const extBubbleIds = chart.extBubble.map(i => i.id)
conditions = filter(conditions, c => extBubbleIds.includes(c.fieldId))
+ const baseColor = colorsWithAlpha[0]
+ const baseColorList = []
+
const data = chart.data?.tableRow
? chart.data.tableRow.map((item, index) => {
+ item['_index'] = '_index' + index
// 颜色标识
const identifier = item[xAxisExt[0]?.dataeaseName]
// 检查该标识是否已有颜色分配,如果没有则分配
@@ -257,6 +261,9 @@ export class SymbolicMap extends L7ChartView {
// 记录分配的颜色
colorAssignments.set(identifier, color)
}
+
+ baseColorList[index] = color
+
if (conditions.length > 0) {
for (let i = 0; i < conditions.length; i++) {
const c = conditions[i]
@@ -271,38 +278,45 @@ export class SymbolicMap extends L7ChartView {
const start = parseFloat(t.min)
const end = parseFloat(t.max)
if (start <= value && value <= end) {
- color = t.color
- colorsWithAlpha[index] = hexColorToRGBA(_color, alpha)
+ color = hexColorToRGBA(_color, alpha)
+ colorsWithAlpha[index] = color
+ baseColorList[index] = color
}
} else if ('lt' === t.term) {
if (value < v) {
- color = t.color
- colorsWithAlpha[index] = hexColorToRGBA(_color, alpha)
+ color = hexColorToRGBA(_color, alpha)
+ colorsWithAlpha[index] = color
+ baseColorList[index] = color
}
} else if ('le' === t.term) {
if (value <= v) {
- color = t.color
- colorsWithAlpha[index] = hexColorToRGBA(_color, alpha)
+ color = hexColorToRGBA(_color, alpha)
+ colorsWithAlpha[index] = color
+ baseColorList[index] = color
}
} else if ('gt' === t.term) {
if (value > v) {
- color = t.color
- colorsWithAlpha[index] = hexColorToRGBA(_color, alpha)
+ color = hexColorToRGBA(_color, alpha)
+ colorsWithAlpha[index] = color
+ baseColorList[index] = color
}
} else if ('ge' === t.term) {
if (value >= v) {
- color = t.color
- colorsWithAlpha[index] = hexColorToRGBA(_color, alpha)
+ color = hexColorToRGBA(_color, alpha)
+ colorsWithAlpha[index] = color
+ baseColorList[index] = color
}
} else if ('eq' === t.term) {
if (value === v) {
- color = t.color
- colorsWithAlpha[index] = hexColorToRGBA(_color, alpha)
+ color = hexColorToRGBA(_color, alpha)
+ colorsWithAlpha[index] = color
+ baseColorList[index] = color
}
} else if ('not_eq' === t.term) {
if (value !== v) {
- color = t.color
- colorsWithAlpha[index] = hexColorToRGBA(_color, alpha)
+ color = hexColorToRGBA(_color, alpha)
+ colorsWithAlpha[index] = color
+ baseColorList[index] = color
}
}
}
@@ -349,7 +363,7 @@ export class SymbolicMap extends L7ChartView {
})
}
} else {
- pointLayer.shape(mapSymbol).color(xAxisExt[0]?.dataeaseName, colorsWithAlpha)
+ pointLayer.shape(mapSymbol).color('_index', colorsWithAlpha)
pointLayer.style({
stroke: {
field: 'color'
@@ -366,7 +380,7 @@ export class SymbolicMap extends L7ChartView {
pointLayer.shape('customIcon')
} else {
const parser = new DOMParser()
- const color = colorsWithAlpha[0]
+ const color = baseColor
const fillRegex = /(fill="[^"]*")/g
const svgStr = basicStyle.customIcon.replace(fillRegex, '')
const doc = parser.parseFromString(svgStr, 'image/svg+xml')
@@ -378,9 +392,11 @@ export class SymbolicMap extends L7ChartView {
} else {
pointLayer
.shape(mapSymbol)
- .color(colorsWithAlpha[0])
+ .color('_index', baseColorList)
.style({
- stroke: colorsWithAlpha[0],
+ stroke: {
+ field: 'color'
+ },
strokeWidth: mapSymbolStrokeWidth,
opacity: mapSymbolOpacity / 10
})