Bladeren bron

修复地图:GeoJSON只含太湖5省,数据精确匹配

Lin Qilong 5 dagen geleden
bovenliggende
commit
7e39c582f6
1 gewijzigde bestanden met toevoegingen van 12 en 5 verwijderingen
  1. 12 5
      gw-ui/src/views/hlgl/assess/index.vue

+ 12 - 5
gw-ui/src/views/hlgl/assess/index.vue

@@ -70,7 +70,14 @@ const tabs = [
 ]
 
 const provinceBar = ref(null), sixScoreBar = ref(null), scoreMap = ref(null)
-echarts.registerMap('china', chinaGeo)
+echarts.registerMap('taihu', chinaGeo)
+// 太湖流域5省数据(匹配GeoJSON ID: 320000江苏 330000浙江 340000安徽 350000福建 310000上海)
+const taihuMapData = [
+  { name:'320000',value:98.5,label:'江苏' },{ name:'330000',value:97.8,label:'浙江' },
+  { name:'340000',value:94.5,label:'安徽' },{ name:'350000',value:96.1,label:'福建' },
+  { name:'310000',value:99.1,label:'上海' },
+]
+const taihuNameMap = Object.fromEntries(taihuMapData.map(d=>[d.name,d.label]))
 
 // 中期评估数据(旧系统硬编码)
 const provinceData = [
@@ -99,10 +106,10 @@ const initCharts = () => {
     if (scoreMap.value) {
       const c0 = echarts.init(scoreMap.value)
       c0.setOption({
-        title: { text: '各省中期评估总分分布', left: 'center', textStyle: { fontSize: 14 } },
-        tooltip: { trigger: 'item', formatter: (p) => `${nameMap[p.name] || p.name}: ${p.value} 分` },
-        visualMap: { min: 84, max: 100, left: 'left', bottom: 10, text: ['高', '低'], inRange: { color: ['#e0f3f8','#abd9e9','#74add1','#4575b4','#313695'] } },
-        series: [{ type: 'map', map: 'china', roam: false, label: { show: true, fontSize: 10, formatter: (p) => nameMap[p.name] || p.name }, data: provinceData.map(d=>({name:d.code,value:d.total})) }]
+        title: { text: '太湖流域各省中期评估总分', left: 'center', textStyle: { fontSize: 14 } },
+        tooltip: { trigger: 'item', formatter: (p) => `${taihuNameMap[p.name] || p.name}: ${p.value} 分` },
+        visualMap: { min: 90, max: 100, left: 'left', bottom: 10, text: ['高', '低'], inRange: { color: ['#e0f3f8','#abd9e9','#74add1','#4575b4','#313695'] } },
+        series: [{ type: 'map', map: 'taihu', roam: false, label: { show: true, fontSize: 12, formatter: (p) => taihuNameMap[p.name] || p.name }, data: taihuMapData }]
       })
       window.addEventListener('resize', () => c0.resize())
     }