VUE+echart绘制地图(伪3D)

2023-10-26

这里以宝鸡地图为示例,其他地图只需更换地图JSON(地图JSON获取通过阿里的datav,地址:阿里云地图获取工具)和data数值即可。
效果图如下:
在这里插入图片描述
首先我们需要创建一个div来盛放地图,这里的div必须给出对应的宽和高,不然地图无法显示!

template 部分可以参考以下代码:

<template>
<div id="map" style="width: auto;height: 730px;"></div>
</template>

js部分可以参考以下代码:

import * as echarts from "echarts";
import BaoJi from "../static/json/baoji.json"
export default {
  name: "map_1",
  mounted() {
    this.map()
  },
  methods: {
    map() {
      const myChart = echarts.init(document.getElementById('map'));
      let option = null;
      const data1 = [
        { name: '陈仓区', value: 45},
        { name: '金台区', value: 0},
        { name: '凤翔区', value: 63 },
        { name: '岐山县', value: 16 },
        { name: '陇县', value: 69 },
        { name: '千阳县', value: 36 },
        { name: '麟游县', value: 46 },
        { name: '扶风县', value: 51 },
        { name: '渭滨区', value: 68 },
        { name: '凤县', value: 42 },
        { name: '太白县', value: 12 },
        { name: '眉县', value: 60 },
      ];
      echarts.registerMap('baoji', BaoJi);
      option = {
        visualMap: {
          show: false,
          min: 0,
          max: 100,
          inRange: {
            color: ['#66a6fa','#0E1E40'],
          },
        },
        tooltip: {
          borderWidth: '1',
          borderColor: 'rgba(255,255,255,0.3)',
          formatter: '{b0}: {c0}', //地图 : {a}(系列名称),{b}(区域名称),{c}(合并数值)
          textStyle: { fontSize: '16px', color: '#4d89f8', fontFamily: 'Arial' },
          show: false,
        },
        title: {
          show: true,
          x: 'center',
          y: 'top',
          text: '宝鸡市行政区域图',
          textStyle: {
            color: '#2980b9',
            fontSize: 18,
          },
        },
        series: [
          {
            type: 'map',
            map: 'baoji',
            zoom: 1.5, // 默认显示级别
            layoutCenter: ['50%', '50%'], // 定义地图中心在屏幕中的位置
            layoutSize: '100%', // 相对于屏幕宽高的百分比
            data: data1,
            roam: 'scale', // 缩放'scale'或者平移'move'
            aspectScale: 1.5, // scale 地图的长宽比
            itemStyle: {
              normal: {
                // 静态的时候展示样式
                areaColor: '#013C62',
                shadowColor: '#013C62',
                shadowBlur: 20,
                shadowOffsetX: -5,
                shadowOffsetY: 15,
              },
              emphasis: {
                areaColor: "#f58220"    //选中区域的背景色
              },
            },
            label: {
              normal: {
                //静态的时候展示样式
                show: true, //是否显示地图省份得名称
                //  formatter: '{c0}\n{b0}',
                textStyle: {
                  color: '#dedee7', // 区域文字 颜色
                  fontSize: 15,
                  fontFamily: 'Arial',
                },
              },
              emphasis: {
                //动态展示的样式
                color: '#faf4f4', //选中区域的字体颜色
                show: true,
                textStyle:{
                  fontSize: 18,
                  fontFamily: 'Arial',
                }
              },
            },
            // 选中状态下的多边形和标签样式
            select: {
              itemStyle: {
                areaColor: "#f58220"    //选中区域的背景色
              },
              label: {
                show: true,
                color: '#308cd9',
              },
            },
          }
        ],
      };
      // 使用刚指定的配置项和数据显示图表。
      myChart.setOption(option);
      window.addEventListener("resize", function () {
        myChart.resize();
      });
    },
  }
}

其中import BaoJi from "../static/json/baoji.json"表示将名称为baoji.json的宝鸡地图json数据导入改vue界面,并以BaoJi表示。
地图数据json可以根据自己的项目需求去修改,无固定要求!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VUE+echart绘制地图(伪3D) 的相关文章

  • 在 JavaScript 中动态创建 SVG 链接

    我正在从 JavaScript 动态创建 SVG 元素 它对于像矩形这样的视觉对象工作得很好 但是我在生成功能性的 xlinks 时遇到了麻烦 在下面的示例中 第一个矩形 静态定义 在单击时可以正常工作 但其他两个 用 JavaScript
  • 检查节点js中特定时区的午夜

    比方说 我有用户的时区 时区 America New York 我想根据用户的时区在午夜执行一些任务 如何检查该时区是否已到达午夜 特定时区的最后午夜 new Date new Date toLocaleDateString en US t
  • 使用 grunt 从 browserify 生成源映射

    我已按照此处的说明进行操作 https www npmjs org package grunt browserify https www npmjs org package grunt browserify 尝试在 grunt 上为 bro
  • 如何仅使用 jQuery 垂直调整 DIV 大小 - 无需插件?

    Edit 我把这段代码放在jsbin中 http jsbin com eneru http jsbin com eneru 我试图让用户使用 jQuery 调整 DIV 元素的大小 仅垂直 我读到了有关 jQuery UI 的内容 我尝试了
  • WebRTC:强制对等点使用 TURN 服务器

    我有一个 webrtc 应用程序 它工作正常 但出于测试目的 我需要测试我的 TURN 服务器是否工作 但因为两个测试设备都在同一网络内 所以我无法测试 认为下面的代码会限制候选人仅那些使用 TURN 服务器的 function onIce
  • 不使用用户代理字符串检测 Google TV

    我们有一个客户希望将其内容发布到 Google TV 通过 Chrome 浏览器 但法律限制其在 常规网络 上发布 因此 我们希望通过 Javascript 检测 Google TV 浏览器 如果没有检测到 则禁止播放该内容 第一个想法是检
  • 请参阅在 JSDoc 中键入不同的文件而不导入

    我正在 Visual Studio Code 中编写 JavaScript ES6 代码 并启用 VSCode 的类型检查 如VSCode 文档 https code visualstudio com docs languages java
  • 用渐变色绘制一个 D3 圆

    如何用渐变颜色画一个圆 比如说 从黄色到蓝色的渐变 通常 要创建黄色圆圈 我们可以使用以下代码 var cdata 50 40 var xscale 40 var xspace 50 var yscale 70 var svg d3 sel
  • 如何在javascript中将两个大数相加?

    我有两个文本框 每个将接受最多千位数字的输入 现在我想将这两个数字相加 我的问题是我应该使用什么数据类型来存储结果 我已经尝试过这个 但我得到的结果是指数形式的 如何存储结果并显示 这是另一种解决方案 因为它更快 更干净 function
  • 有脚本模拟控件、按键序列吗?

    我搜索并发现我可以使用 jQuery 模拟按键事件 但我对 jQuery 的了解很差 而且我不知道具体是如何实现的 So I have a Greasemonkey script which manages 2 different webp
  • 在项目之间共享 ASP.NET MVC 部分视图

    在应用程序之间共享公共部分视图的最佳方式是什么 我创建了一个单独的程序集 其中包含 ascx 文件中的部分视图 一些与该视图配合使用的脚本以及一个 HtmlHelper 扩展方法 以便更轻松地创建部分视图 但是 当从 ASP NET MVC
  • 创建可以传递参数而无需创建新组件的函数

    我的问题与这个问题有关React用于渲染函数中的绑定函数 以下不是好的做法 render div 因为每次重新渲染都会向页面添加一个新功能 最终导致浏览器内存不足 解决方案是这样做 constructor this callFunction
  • Javascript - 如何创建按键事件?

    我在互联网上查找过这一点 我所能找到的都是已弃用的函数 在发布之前请检查以确保您建议的代码没有被弃用 我发现了这个并尝试过 https developer mozilla org en US docs Web API KeyboardEve
  • 使用mongoose在mongodb模式中使用ensureIndex

    我想打电话ensureIndex on the authorName 命令是什么以及我应该将其放在这段代码中的什么位置 var mongoose require mongoose defines the database schema fo
  • AngularJS 阻止 symfony2 表单中的提交按钮

    我在 symfony2 中创建了表单 最后呈现了提交表单的按钮 当我添加ng app myApp 一切正常 但我无法提交此页面上的表单 为什么会这样以及如何解锁 FORM gt add company choice array mapped
  • babeljs 无法正确转换扩展类[重复]

    这个问题在这里已经有答案了 我从这里得到了这个示例代码MDN https developer mozilla org en US docs Web JavaScript Reference Classes extends 稍微修改一下打印结
  • AngularJS:如何显示预加载或加载直到页面完全加载?

    我有一个图像库网站 我在控制器中以 json 格式从数据库获取所有图像和图像相关数据 然后使用 ng repeat 将它们与 html 绑定 现在 数据加载较早 但图像加载较晚 因此图像比较分散 怎么解决这个问题 我不想使用 setTime
  • TypeError: 调用 Function.prototype.method() 时 this.prototype 未定义

    我正在读 Javascript 优秀部分 一书 现在我正在阅读有关增强类型的章节 Function prototype method function name func this prototype name func return th
  • 打开新浏览器窗口的最佳方式是什么?

    我知道大多数链接应该留给最终用户来决定如何打开 但我们不能否认有时您几乎 必须 强制进入新窗口 例如以表单形式维护数据 在当前页面 我想知道的是关于在新浏览器窗口中打开链接的 最佳 方式的共识是什么 我知道 a href url targe
  • 如何追踪正在修改 DOM 中 div 内联样式的 JavaScript?

    我正在搞乱 WordPress 插件 当我从顶部向下滚动大约 50 像素时 div 标签的内联样式属性正在发生变化 我怎样才能找出造成这种变化的原因 有 Chrome 功能或开发工具可以指向它吗 Try the Chrome 开发工具时间轴

随机推荐

  • 守护线程

    守护线程是一类比较特殊的线程 一般用于处理后台的工作 比如JDK的垃圾回收线程 守护线程具备自动结束生命周期的特点 非守护线程不具备这样的特点 首先明确一个问题 JVM什么情况下会退出 The java virtual machine ex
  • 关于H.248的树图规则

    一 H248数图 数图可以是一个字符串 我们不妨称之为数图字符串 它遵循了Unix系统命令中的规则表达式的语法规定 也可以是许多数图字符串的并集 之间用 分隔 我们不妨称之为数图字符串列表 以下是一个数图的例子 2 8 xxxxxxx 13
  • RabbitMQ 与 Kafka 对比

    作为一个有丰富经验的微服务系统架构师 经常有人问我 应该选择RabbitMQ还是Kafka 基于某些原因 许多开发者会把这两种技术当做等价的来看待 的确 在一些案例场景下选择RabbitMQ还是Kafka没什么差别 但是这两种技术在底层实现
  • 【jackson】自定义字段注解完成序列化逻辑

    目录 背景 本文开发环境介绍 新建一个注解 新建一个JavaBean 新建一个JsonSerializer 新建一个AnnotationIntrospector 单元测试 总结 背景 Spring默认的JSON序列化工具使用的是jackso
  • 基于CNN-LSTM数据分类:Matlab实现

    基于CNN LSTM数据分类 Matlab实现 在当今的信息时代 数据处理和分类已经成为了不可或缺的技能和工具 其中卷积神经网络 Convolutional Neural Network CNN 和长短时记忆网络 Long Short Te
  • 多少存款才是裸辞的最好姿态?

    朋友小惠上个月裸辞了 前几天见她还意气风发 没想到昨晚就和我说 焦虑来得远比想象中快 她的计划是三个月内找到满意的新工作 满打满算攒了三个月的生活费才踏出裸辞这一步 结果面试了几个公司后 对于能否在三个月内找到满意工作感到极度地焦虑 小惠认
  • [SWPUCTF 2021 新生赛]finalrce

  • tplink 703n lede -17.01 编译过程

    tplink 703n lede 17 01 编译过程 tplink 703n lede 17 01 编译过程 tplink 703n 支持USB扩展 利用其功能可实现挂载硬盘 打印机共享等 网上虽然有些现成的固件 但基于openwrt 1
  • shiro(java安全框架)

    以下都是综合之前的人加上自己的一些小总结 Apache Shiro是一个强大且易用的Java安全框架 执行身份验证 授权 密码学和会话管理 使用Shiro的易于理解的API 您可以快速 轻松地获得任何应用程序 从最小的移动应用程序到最大的网
  • SQL - MySQL回表

    一 回表概念 现象 回表 顾名思义就是回到表中 也就是先通过普通索引 我们自己建的索引不管是单列索引还是联合索引 都称为普通索引 扫描出数据所在的行 再通过行主键ID 取出索引中未包含的数据 所以回表的产生也是需要一定条件的 如果一次索引查
  • 怎么用计算机算ess tss,"ESS、RSS、TSS"分别表示什么?

    回归平方和 ESS 残差平方和 RSS 总体平方和 TSS 1 回归平方和 是反映自变量与因变量之间的相关程度的偏差平方和 用回归方程或回归线来描述变量之间的统计关系时 实验值yi与按回归线预测的值Yi并不一定完全一致 2 残差平方和是在线
  • 通过Android Studio 将yolov5部署到手机端(2023新手最新适用版)

    通过Android Studio 将yolov5部署到手机端 2023新手最新适用版 java17安装 下载java17 Java Downloads Oracle 配置环境变量 这个是我安装后的路径 将这个路径复制 设置环境变量 在系统变
  • Qt技巧:QProcess与外部程序的调用

    项目做到一定阶段 常常须要在原来的project上调用外部程序 Qt为此提供了QProcess类 QProcess可用于完毕启动外部程序 并与之交互通信 一 启动外部程序的两种方式 1 一体式 void QProcess start con
  • NFS服务安装配置(centos7 nfs-utils示例)

    测试机器 nps server 10 166 205 104 nfs client 10 166 205 101 server端 安装nfs utils和rpcbind sudo yum install nfs utils rpcbind
  • np.random里让你迷糊的随机数函数到底咋区分(结合tensorflow)

    小测 numpy以下哪个函数不能产生正态分布的随机数 A standard normal B randn C random D normal 从 0 1 范围的标准分布中产生1个随机数 以下哪个numpy函数是错误的 A rand B ra
  • Sort 【HDU - 5884】【哈夫曼树】

    题目链接 一开始看到题的时候 竟然读成了是按照升序排序的一串数 害得我WA了两发 还以为是补0补错了 研究了一会补0发现好像没有多大问题 然后就继续了 直到再看了遍题 发现好像是没有给你拍好序的 然后AC 这道题其实哈夫曼树不难 就是补0思
  • 【信创】麒麟操作系统配置在线源及手动查找所需软件包

    获取操作系统信息 命令 nkvers 关注倒数第2行 示例中大版本 V10 小版本 SP2 CPU架构 aarch64 root localhost nkvers Kylin Linux Version Release Kylin Linu
  • ThreadLocal原理以及其安全问题

    ThreadLocal 是一个线程内共享数据的类 其原理是在线程有一个 ThreadLocalMap key是ThreadLocal对象 value是自定义的数据 所以在同一个线程中 用同一个threadlocal去get数据 能取到同样的
  • ansible 离线部署

    1 安装 python 环境 wget https mirrors bfsu edu cn anaconda archive Anaconda3 2022 10 Linux x86 64 sh sh Anaconda3 2022 10 Li
  • VUE+echart绘制地图(伪3D)

    这里以宝鸡地图为示例 其他地图只需更换地图JSON 地图JSON获取通过阿里的datav 地址 阿里云地图获取工具 和data数值即可 效果图如下 首先我们需要创建一个div来盛放地图 这里的div必须给出对应的宽和高 不然地图无法显示 t