【可视化大屏开发】17. 加餐-ECharts定制省份地图

news2024/11/29 6:29:04


各身份地图数据下载小工具


DataV.GeoAtlas地理小工具系列 

登录DataV 后,直接通过选择点击获取需要的省份地区数据

> 其实单击即可完成选择

检查下载的数据格式是否正常

自定义字体

更新地图部分代码

index.less部分

//声明字体  
@font-face{  
  font-family: electronicFont;  
  src: url("../font/DS-DIGIT.TTF");  
}  
  
@font-face {  
  font-family: 'YZGCTYH2';  
  src: url('../font/YeZiGongChangTangYingHei-2.ttf') format('truetype');  
}  
  
@font-face {  
  font-family: 'QNHGJM';  
  src: url('../font/QingNiaoHuaGuangJianMeiHei-2.ttf') format('truetype');  
}

 现代浏览器通常能够根据用户设备和自身的支持情况智能地选择最合适的字体格式进行加载。例如,如果同时提供了多种格式(如 'truetype', 'woff', 'woff2'),浏览器会优先选择它认为性能最佳或最支持的格式。如果不明确指定 format(),浏览器可能会尝试猜测文件格式,这可能导致加载延迟或失败。

index.js

// 绘制贵州地图  
function gzmap(guizhoudata) {  
    const myGZChart = echarts.init(document.querySelector(".map .echart"));  
    echarts.registerMap('贵州', guizhoudata);  
  
    let option = {  
        title: {  
            text: ['贵州地图'],  
            textStyle: {  
                color: '#fcfafa',  
                fontSize: 20,  
                fontFamily: 'YZGCTYH2',  
            },  
            subtextStyle: {  
                color: '#e3e2e2',  
                fontSize: 16,  
                fontFamily: 'HYYuJinLi-45F'  
            },  
            left: 'center', // 主标题居中  
            subtext: '各市区显示',  
            subleft: 'right', // 副标题靠右  
        },  
        series: [  
            {  
                // 数据名称  
                name: '数据名称',  
                // 数据类型,这里指定为地图类型  
                type: 'map',  
                // 地图对应的区域,这里指定为贵州  
                map: '贵州',  
                // 选择模式,这里指定为单选模式  
                selectedMode : 'single',  
                // 标签配置,决定是否显示以及如何显示标签  
                label: {  
                    // 是否显示标签  
                    show: true,  
                    // 标签的文本样式配置  
                    textStyle:{  
                        // 文本颜色  
                        color: '#fff',  
                        // 文本大小  
                        fontSize: 14,  
                    },  
                },  
                data:[  
                    {name: '贵阳市',value: Math.round(Math.random()*1000)},  
                    {name: '遵义市',value: Math.round(Math.random()*1000)},  
                    {name: '六盘水市',value: Math.round(Math.random()*1000)},  
                    {name: '毕节市',value: Math.round(Math.random()*1000)},  
                    {name: '铜仁市',value: Math.round(Math.random()*1000)},  
                    {name: '安顺市',value: Math.round(Math.random()*1000)},  
                    {name: '黔西南布依族苗族自治州',value: Math.round(Math.random()*1000)},  
                    {name: '黔东南苗族侗族自治州',value: Math.round(Math.random()*1000)},  
                    {name: '黔南布依族苗族自治州',value: Math.round(Math.random()*1000)},  
                ]  
            }],  
        // 定义一个视觉映射组件  
        visualMap: {  
            type: 'continuous', // 设置视觉映射类型为连续型  
            show: true, // 显示视觉映射组件  
            hoverLink: true, // 开启鼠标悬停时的关联数据链接  
            inRange: {  
                // 设置视觉映射范围内的配置  
                color: ['#c4cdea', '#8da7ea', '#667fec', '#3134ec'], // 设置颜色梯度  
                symbolSize: [30, 100] // 设置标记的大小范围  
            },  
            textStyle: { // 设置文字样式  
                color: "rgba(255, 255, 255, .8)", // 设置文字颜色  
                fontSize: 18, // 设置文字大小  
                fontWeight: 'bold', // 设置文字加粗  
            },  
            right: "3%", // 将视觉映射组件定位在右侧,距离边框3%的位置  
            min: 0, // 定义视觉映射的最小值  
            max: 1000, // 定义视觉映射的最大值  
            calculable : true, // 允许用户在组件上选择数据范围  
        },  
    };  
    myGZChart.setOption(option);  
}  
  
// 使用 $.get() 方法加载数据,渲染地图  
$.get("../jsons/520000.json", function(response) {  
    // 成功加载数据后,将数据存储在变量中  
    let guizhoudata = response;  
    // console.log(guizhoudata.type);  
    gzmap(guizhoudata)  
}).fail(function() {  
    // 如果加载失败,可以在此处理失败情况  
    console.log("Failed to load data.");  
});

更新后的效果
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1586695.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ios包上架系列 三、JumpServer 堡垒机使用

1、钉钉申请搜索(jumpserver权限申请) 服务器信息可以询问产品经理,如有疑问最好当面和运维同事学习 XXX 2、使用钉钉扫码登录 https://jump.xxx.com/ui/#/workbench/assets 3、手机APP Authenticator,打开即可获取验证码 4、…

Clip论文学习

学习过程如上 学习时,图片与文本对应(句子),共有n个句子与n个文本,进行对比学习 测试时,将标签句子化,再将其放入encoder中操作。最后找出特征最相似的。 特点:泛化能力强&#x…

VSCode中调试C++程序

目录 一、准备工作:安装插件 1、C/C插件 ​编辑 2、CMake插件 3、CMake tool插件 二、调试过程 1、debug 2、打断点 3、调C/C文件 每次重新调试的时候都忘了具体步骤,直接给自己写个备忘录好了。 一、准备工作:安装插件 1、C/C插件…

全面学习SpringCloud框架指南

要深入学习Spring Cloud框架,你需要系统地掌握其核心组件和概念,并了解如何在实际项目中应用这些知识。以下是一些关键的学习点和相应的学习内容: 一共分为10个模块包括: 1、微服务架构基础: 理解微服务架构的概念和优势。 学习单体架构向微服务架构演进的过程。 掌握…

C语言 | Leetcode C语言题解之第12题整数转罗马数字

题目: 题解: const char* thousands[] {"", "M", "MM", "MMM"}; const char* hundreds[] {"", "C", "CC", "CCC", "CD", "D", "DC"…

langchain txt 文档加载,分割

stuff 策略 加载 arXiv 论文,让模型总结前 2000 字 这里采用的是 stuff 策略,也就是将一大段文本。按字数分割成 N 个文本块,又合并成一个大的文本块。 对超大规模不友好,没有区分文档重要性,适合文档量较少场景 i…

未来课堂革命:OpenAI 发布 ChatGPT 使用指南,探索生成式 AI 如何重塑教育景观

随着新学期的来临,众多初登教师舞台的 00 后们,也完成了他们的第一个教师身份下的暑期生活。 对于开学的抵触情绪,不仅学生们普遍存在,许多 00 后的新晋教师们也同样感同身受。某种程度上,这些抗拒上班的年轻教师群体…

编译原理 学习笔记

1、代码: (1 2) * 3 2、词法解析: 3、抽象语法树: 4、语法树递归下降求值: 先Current_Node是根节点乘号,乘号,是中缀运算符,找左子节点,是加号,加号是中缀表达式&…

生产问题排查指南:从定位到解决

✨✨祝屏幕前的小伙伴们每天都有好运相伴左右,一定要天天开心!✨✨ 🎈🎈作者主页: 喔的嘛呀🎈🎈 目录 一、引言 二、 观察和定位问题 监控系统 日志分析 用户反馈 其他观察方式 注意事项…

共享低碳未来!科士达新一代工商业储能产品引爆ESIE 2024

4月11日,第十二届储能国际峰会暨展览会(ESIE 2024)在北京首钢会展中心盛大开幕,科士达以“数智光储,共享低碳未来”为主题,携多款工商业储能产品及解决方案惊艳亮相本次盛会。 展会首日,科士达展…

C语言——实践小游戏(贪吃蛇)代码版

大家好久不见,我是残念我回来了,希望在你看完之后,能对你有所帮助,有什么不足请指正!共同学习交流 本文由:残念ing原创CSDN首发,如需要转载请通知 个人主页:残念ing-CSDN博客&#x…

196算法之谜在 JSP 中使用内置对象 request 获取 form 表单的文本框 text 提交的数据。

(1)编写 inputNumber . jsp ,该页面提供一个 form 表单,该 form 表单提供一个文本框 text ,用于用户输入一个正整数,用户在 form 表单中输入的数字,单击 submit 提交键将正整数提交给 huiwenNumber . jsp 页…

基于JSP+Mysql+HTml+Css仓库出入库管理系统设计与实现

博主介绍:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程&#xff…

Leetcode二十二题:合并K个升序链表【22/1000 python】

“合并K个升序链表”,这是一道中等难度的题目,经常出现在编程面试中。以下是该问题的详细描述、解题步骤、不同算法的比较、代码示例及其分析。 问题描述 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中…

BUCK 电路详解

参考内容: 手撕Buck!Buck公式推导过程 电力电子的基础应用 《精通开关电源设计(第二版)》 Buck电源芯片输出有问题?检查这几样 原来PWM这么简单! BUCK 电路构建 根据高中所学习的物理知识可以很容易的想到…

Harmony鸿蒙南向驱动开发-MIPI CSI接口使用

功能简介 CSI(Camera Serial Interface)是由MIPI联盟下Camera工作组指定的接口标准。CSI-2是MIPI CSI第二版,主要由应用层、协议层、物理层组成,最大支持4通道数据传输、单线传输速度高达1Gb/s。 物理层支持HS(High …

18_SPI通信外设

SPI通信外设 SPI通信外设SPI外设简介SPI框图SPI基本结构主模式全双工连续传输非连续传输 SPI通信外设 SPI外设简介 STM32内部集成了硬件SPI收发电路,可以由硬件自动执行时钟生成、数据收发等功能,减轻CPU的负担 可配置8位/16位数据帧、高位先行/低位先…

基于 MATLAB 和 App Designer 的 UI 交互框架开发的一款电力系统潮流计算工具

基于 MATLAB 和 App Designer 的 UI 交互框架开发的一款电力系统潮流计算工具 文章目录 基于 MATLAB 和 App Designer 的 UI 交互框架开发的一款电力系统潮流计算工具一、软件介绍二、软件功能1、数据输入 2、潮流作业设置3、 潮流结果报表及可视化三、 软件设计思路1 、牛顿拉…

蓝桥杯备考day4

1.1 二分查找模板 bool check(int x) {// 进行某些操作 } // 二分查找函数 int binarySearch() {int l 1, r n; // 初始化左右边界while (r - l > 1) // 当右边界与左边界相差大于1时{int mid (l r) >> 1; // 取中间位置if (check(mid)) // 如果满足条件r mid; …

[目标检测] OCR: 文字检测、文字识别、text spotter

概述 OCR技术存在两个步骤:文字检测和文字识别,而end-to-end完成这两个步骤的方法就是text spotter。 文字检测数据集摘要 daaset语言体量特色MTWI中英文20k源于网络图像,主要由合成图像,产品描述,网络广告(淘宝)MS…