echarts省份标注加散点效果

2024-06-24 13:08

本文主要是介绍echarts省份标注加散点效果,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述这个是安徽的效果图,鼠标移到红色标注或者对应的市区位置都会显示对应的数值。

先直接上代码:

import anhuiMapJson from './anhui.json'
getCoords: function(city) {var res = [];if (city != null) {for (var c in this.cityMap.features) {if (this.cityMap.features[c].properties.name == city) {res = this.cityMap.features[c].properties.cp;break;}}return res;} else {return res;}},convertData: function(data) {var res = [];for (var i = 0; i < data.length; i++) {var geoCoord = this.getCoords(data[i].name);if (geoCoord) {res.push({name: data[i].name,value: geoCoord.concat(data[i].value)});}}return res;},loadMapAH() {var data = [];this.getPost("xxxx/xxxxx", this.queryParams).then(response => {var result = response.data;if (result.returnCode == "0") {data = result.data.list;var max = 480, min = 9; // todo var maxSize4Pin = 100, minSize4Pin = 20;this.e3.registerMap('anhui', anhuiMapJson);let main1 = this.e3.init(document.getElementById("main1"));let option = {tooltip: {trigger: 'item',formatter: function(params) {if (typeof (params.value)[2] == "undefined") {if(isNaN(parseInt(params.value))){return params.name + ' : ' + '-';}else {return params.name + ' : ' + params.value;}} else {return params.name + ' : ' + params.value[2];}}},legend: {orient: 'vertical',y: 'bottom',x: 'right',data: ['pm2.5'],textStyle: {color: '#fff'}},visualMap: {show: false,min: 0,max: 500,left: 'left',top: 'bottom',text: ['高', '低'], // 文本,默认为数值文本calculable: true,seriesIndex: [1],inRange: {}},geo: {show: true,map: 'anhui',label: {normal: {show: false},emphasis: {show: false,}},left:'45%', //调整地图初始化位置roam: true,itemStyle: {normal: {areaColor: 'transparent',borderColor: '#3fdaff',borderWidth: 2,shadowColor: 'rgba(63, 218, 255, 0.5)',shadowBlur: 30},emphasis: {areaColor: '#2B91B7',}}},series: [{type: 'map',map: 'anhui',geoIndex: 0,aspectScale: 0.75, //长宽比showLegendSymbol: false, // 存在legend时显示label: {normal: {show: false},emphasis: {show: false,textStyle: {color: '#fff'}}},roam: true,itemStyle: {normal: {areaColor: '#031525',borderColor: '#FFFFFF',},emphasis: {areaColor: '#2B91B7'}},animation: false,data: data},{name: '点',type: 'scatter',coordinateSystem: 'geo',symbol: 'pin',symbolSize: function (val) {var a = (maxSize4Pin - minSize4Pin) / (max - min);var b = minSize4Pin - a*min;b = maxSize4Pin - a*max;return a*val[2]+b;},label: {normal: {show: true,textStyle: {color: '#fff',fontSize: 9,}}},itemStyle: {normal: {color: '#F62157', //标志颜色}},zlevel: 6,data: this.convertData(data)},{name: 'Top 5',type: 'effectScatter',coordinateSystem: 'geo',data: this.convertData(data.sort(function(a, b) {return b.value - a.value;})),symbolSize: function(val) {return val[2] / 5;},showEffectOn: 'render',rippleEffect: {brushType: 'stroke'},hoverAnimation: true,label: {normal: {formatter: '{b}',position: 'right',show: true}},itemStyle: {normal: {color: '#F4E925',shadowBlur: 10,shadowColor: '#05C3F9'}},zlevel: 1},]};setTimeout(() => {main1.setOption(option);main1.resize();}, 10);}});

import 导入的是安徽对应的json地图文件,然后getCoords方法是自己写的,根据后端请求的数据去跟json文件中的市名字比对,返回对应的地理坐标系。
需要后端返回的数据格式为

data = [{name: '海门', value: 9},{name: '鄂尔多斯', value: 12},{name: '招远', value: 12}]

注意:后端返回的数据一定要跟地图名称的对应,如果返回其他省份地市的名字数据会有可能导致数据显示异常。

这篇关于echarts省份标注加散点效果的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1090231

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

防近视护眼台灯什么牌子好?五款防近视效果好的护眼台灯推荐

在家里,灯具是属于离不开的家具,每个大大小小的地方都需要的照亮,所以一盏好灯是必不可少的,每个发挥着作用。而护眼台灯就起了一个保护眼睛,预防近视的作用。可以保护我们在学习,阅读的时候提供一个合适的光线环境,保护我们的眼睛。防近视护眼台灯什么牌子好?那我们怎么选择一个优秀的护眼台灯也是很重要,才能起到最大的护眼效果。下面五款防近视效果好的护眼台灯推荐: 一:六个推荐防近视效果好的护眼台灯的

利用matlab bar函数绘制较为复杂的柱状图,并在图中进行适当标注

示例代码和结果如下:小疑问:如何自动选择合适的坐标位置对柱状图的数值大小进行标注?😂 clear; close all;x = 1:3;aa=[28.6321521955954 26.2453660695847 21.69102348512086.93747104431360 6.25442246899816 3.342835958564245.51365061796319 4.87

【Godot4.3】多边形的斜线填充效果基础实现

概述 图案(Pattern)填充是一个非常常见的效果。其中又以斜线填充最为简单。本篇就探讨在Godot4.3中如何使用Geometry2D和CanvasItem的绘图函数实现斜线填充效果。 基础思路 Geometry2D类提供了多边形和多边形以及多边形与折线的布尔运算。按照自然的思路,多边形的斜线填充应该属于“多边形与折线的布尔运算”范畴。 第一个问题是如何获得斜线,这条斜线应该满足什么样

UniApp实现漂亮的音乐歌词滚动播放效果

在现代的音乐播放应用中,歌词的展示和滚动播放已经成为了一个非常常见的功能。今天,我们将通过UniApp来实现一个漂亮的歌词滚动播放功能。我们将使用UniApp提供的组件和API来完成这个任务。 页面结构 在页面的模板部分,我们需要创建一个音频播放器和歌词展示区域。使用<scroll-view>组件来实现歌词的滚动效果。 <template><view class="audio-co

Nuxt3入门:过渡效果(第5节)

你好同学,我是沐爸,欢迎点赞、收藏、评论和关注。 Nuxt 利用 Vue 的 <Transition> 组件在页面和布局之间应用过渡效果。 一、页面过渡效果 你可以启用页面过渡效果,以便对所有页面应用自动过渡效果。 nuxt.config.js export default defineNuxtConfig({app: {pageTransition: {name: 'fade',mode

Differential Diffusion,赋予每个像素它应有的力量,以及在comfyui中的测试效果

🥽原论文要点 首先是原论文地址:https://differential-diffusion.github.io/paper.pdf 其次是git介绍地址:GitHub - exx8/differential-diffusion 感兴趣的朋友们可以自行阅读。 首先,论文开篇就给了一个例子: 我们的方法根据给定的图片和文本提示,以不同的程度改变图像的不同区域。这种可控性允许我们再现

vue3 为组件的 emits 标注类型,defineEmits基于类型的定义的简单理解

1)在 <script setup> 中,emit 函数的类型标注也可以通过运行时声明或是类型声明进行。 2)基于类型的: const emit = defineEmits<{ (e: 'change', id: number): void (e: 'update', value: string): void }>() 说明:e: 指定了方法名,id:数字型的参数,这个就是限定了方法名及