echart+vue3实现世界地图和数据轮播

汉化版世界地图资源百度网盘链接:世界地图
提取码: 7952
废话不多说,先上图,在上代码,留个小红心再走,附件赠送一个汉化版世界地图json文件,不好意思,csdn抽经文件不让上传,需要汉化版的世界地图文件的可以留言~

图一:
在这里插入图片描述
图二:
在这里插入图片描述

<div>国际经营看板</div>
	<div class="container">
		<!--为echarts准备一个dom容器-->
		<div ref="myEcharts" style="width: 1500px; height: 600px"></div>
	</div>
import * as echarts from 'echarts'
import worldMap from '/@/assets/json/other/world_zh.ts'
const myEcharts = ref()

const mapData = [
	{ name: '中国', projectTotal: 272, projectInvestment: 7382, projecUserCN: 23334 },
	{ name: '美国', projectTotal: 72, projectInvestment: 382, projecUserCN: 3334 },
	{ name: '俄罗斯', projectTotal: 82, projectInvestment: 352, projecUserCN: 4334 },
]

const initMap = (mapData: any) => {
	nextTick(() => {
		echarts.registerMap('world', worldMap, {
			Alaska: {
				left: -131,
				top: 25,
				width: 15,
			},
			Hawaii: {
				left: -110,
				top: 28,
				width: 5,
			},
			'Puerto Rico': {
				left: -76,
				top: 26,
				width: 2,
			},
		})
		const myChart = echarts.init(myEcharts.value, '')
		const option = {
			title: {
				text: '境外事务大屏看板',
				left: 'center',
			},
			tooltip: {
				triggerOn: 'mousemove',
				formatter: function (params: any) {
					if (params?.data) {
						var a = `<span style="color:rgba(23, 240, 204)">国家名称:${params.data.name}</span></br>`
						var b = `<span style="color:rgba(23, 240, 204)">项目总数量:${params.data.projectTotal}</span></br>`
						var c = `<span style="color:rgba(23, 240, 204)">项目总投资额(亿元):${params.data.projectInvestment}</span></br>`
						var d = `<span style="color:rgba(23, 240, 204)">在册中方员工数:${params.data.projecUserCN}</span></br>`
						return [a, b, c, d].join('')
					}
				},
				backgroundColor: 'rgba(29, 38, 71)',
				// 额外附加的阴影
				extraCssText: 'box-shadow:0 0 4px rgba(11, 19, 43,0.8);',
			},
			geo: {
				map: 'world',
				// aspectScale: 0.75, //长宽比
				// zoom: 1.0,
				roam: false,
			},
			series: [
				{
					name: '境外事务',
					type: 'map',
					roam: false,
					map: 'world',
					// label: {
					// 	show: true,
					// },
					itemStyle: {
						normal: {
							borderColor: 'rgb(147, 235, 248)',
							borderWidth: 1,
							areaColor: {
								type: 'radial',
								x: 0.5,
								y: 0.5,
								r: 0.8,
								colorStops: [
									{
										offset: 0,
										color: '#396a92', // 0% 处的颜色
									},
									{
										offset: 1,
										color: '#396a92', // 100% 处的颜色
									},
								],
								globalCoord: true, // 缺省为 false
							},
						},
						emphasis: {
							areaColor: 'rgba(23, 240, 204)',
							shadowOffsetX: 0,
							shadowOffsetY: 0,
							borderWidth: 0,
						},
					},
					data: mapData,
				},
			],
		}
		myChart.setOption(option)
		// 自动轮播
		let n = 0
		let Carousel = setInterval(function () {
			myChart.dispatchAction({
				type: 'showTip',
				seriesIndex: 0,
				name: mapData[n].name,
			})
			myChart.dispatchAction({
				type: 'mapToggleSelect',
				seriesIndex: 0,
				name: mapData[n].name,
			})
			n++
			if (n == mapData.length) {
				n = 0
			}
		}, 3000)
		// 鼠标移入有mapData数据的国家清除定时器
		myChart.on('mouseover', function (params) {
			if (params.data) {
				clearInterval(Carousel)
			}
		})
		// 鼠标移出有mapData数据的国家清除定时器,并开起新的定时器
		myChart.on('mouseout', function (params) {
			if (params.data) {
				clearInterval(Carousel) //停止定时器
				Carousel = setInterval(function () {
					myChart.dispatchAction({
						type: 'showTip',
						seriesIndex: 0,
						name: mapData[n].name,
					})
					myChart.dispatchAction({
						type: 'mapToggleSelect',
						seriesIndex: 0,
						name: mapData[n].name,
					})
					n++
					if (n == mapData.length) {
						n = 0
					}
				}, 3000)
			}
		})
	})
}

//初始化echarts实例
onMounted(() => {
	initMap(mapData)
})
  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
### 回答1: Vue3+Echarts+Java数据报表统计管理系统源码是一个基于Vue3和Echarts前端框架以及Java后端开发的一套数据报表统计管理系统的源代码。 该系统的主要功能包括数据可视化、数据报表生成与展示、数据统计与分析等。通过使用Vue3作为前端框架,可以实现页面的快速渲染和交互效果的优化。而Echarts作为数据可视化的工具,可以将数据以图表的形式展示出来,提供更直观、易懂的数据分析结果。 在后端方面,系统使用Java作为编程语言进行开发。Java是一种通用的、面向对象的编程语言,具有跨平台性和稳定性,非常适合用于开发后端服务。通过Java,可以实现数据的存储、查询和处理,并将处理结果返回给前端进行展示。 系统的源码将涵盖前后端的代码,其中前端部分将包括Vue3的组件和路由配置,以及与后端进行通信的功能代码。后端部分将包括用Java编写的接口和数据处理逻辑代码,以及与数据库进行交互的代码。 总之,Vue3+Echarts+Java数据报表统计管理系统源码将提供一个完整的数据报表统计管理系统的开发框架,可以帮助开发者快速搭建和定制自己的数据可视化和统计分析系统。 ### 回答2: Vue3 echart java数据报表统计管理系统源码是一个基于Vue3和Java开发的一个数据报表统计管理系统。该系统主要用于对数据进行统计分析和报表生成。 系统使用了Vue3作为前端框架,提供了丰富的UI组件和数据绑定功能,可以方便地开发出用户友好的界面。同时,系统还使用了echart作为数据可视化工具,可以将统计结果以图表的形式直观地呈现给用户。 在后端开发方面,系统使用了Java作为主要开发语言,使用了Spring Boot框架进行开发。Spring Boot提供了丰富的功能和组件,使得开发人员可以更加高效地进行开发。系统还使用了MyBatis作为持久层框架,可以方便地与数据库进行交互。 系统的主要功能包括数据的录入,数据的处理和报表的生成。用户可以在系统中录入需要进行统计的数据,然后系统会对数据进行处理,并生成相应的报表。报表可以以各种图表的形式展示出来,如柱状图、饼状图、折线图等,用户可以根据需要选择合适的图表进行查看。 此外,系统还提供了一些辅助功能,如数据导出和导入、权限管理、用户管理等。用户可以根据需要对系统进行相应的设置和管理。 总之,Vue3 echart java数据报表统计管理系统源码是一个功能丰富、界面友好的数据报表统计管理系统,可以帮助用户轻松地进行数据统计分析和报表生成。 ### 回答3: vue3 echart java数据报表统计管理系统源码是一个基于Vue3和Echart数据报表统计管理系统的源代码。 该系统的开发语言为Java,采用了Vue3作为前端框架,并通过Echart实现数据可视化和报表功能。它具有以下特点和功能: 1. 界面美观:使用Vue3作为前端框架,可以提供丰富的UI组件和交互效果,使系统具有良好的用户体验和界面美观。 2. 数据可视化:利用Echart作为数据可视化工具,可以将数据以图表的形式直观地展示出来,帮助用户更好地理解数据和分析统计结果。 3. 数据报表:系统提供了丰富的报表功能,可以根据用户的需求生成各种类型的报表,包括柱状图、折线图、饼图等,帮助用户更好地进行数据分析和决策。 4. 数据统计:系统可以对输入的数据进行统计分析,包括求和、平均值、最大值、最小值等统计指标的计算,帮助用户深入了解数据的特征和趋势。 5. 权限管理:系统具备权限管理功能,可以根据用户的角色和权限对系统的访问进行限制,保证数据的安全性和机密性。 6. 操作便捷:系统提供了用户友好的操作界面和交互方式,方便用户对数据进行查询、筛选、导出等操作,提高工作效率。 总之,该系统源码结合了Vue3、Echart和Java的优势,提供了一个功能完善、界面美观的数据报表统计管理系统,可广泛应用于各种数据分析和决策场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值