码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • echarts+DateV.GeoAtlas 绘制地图


    DateV.GeoAtlas 使用教程地址:DataV.GeoAtlas地理小工具系列

    echarts参考地址:Documentation - Apache ECharts

    原理:

    echarts做为图形绘制工具 配置参数进行绘制 

    DateV.GeoAtlas提供json数据来源,提供无数个密密麻麻点点然后 绘制成 地图形状

    示例:

    从 DateV.GeoAtlas  上面的地址中下载json数据   命名:china.json

    页面 index.jsx. (需要 给外层设置宽高)

    import React, {useEffect} from 'react';
    import * as echarts from 'echarts/core';
    import { TitleComponent, TooltipComponent, GeoComponent, GridComponent, LegendComponent } from 'echarts/components';
    import { ScatterChart } from 'echarts/charts';
    import { CanvasRenderer } from 'echarts/renderers';
    import { EffectScatterChart } from 'echarts/charts';
    import { LinesChart } from 'echarts/charts';
    import chinaMapJson from './china.json';
    
    
    echarts.use([
        TitleComponent,
        TooltipComponent,
        GeoComponent,
        GridComponent,
        LegendComponent,
        ScatterChart,
        CanvasRenderer,
        EffectScatterChart,
        LinesChart,
    ]);
    const EchartsMap = () => {
    
        useEffect(() => {
    
            const echartsConDom = document.getElementById('echarts-map');
            const myChart = echarts.init(echartsConDom); // 初始化
            echarts.registerMap('chinaMap', chinaMapJson);
    
            const series = [];
    
            const option = {
                backgroundColor: '#fff',
    
                geo: {
                    map: 'chinaMap', // 地图选择
                    // silent: true, // 禁止图形响应鼠标事件
                    itemStyle: {
                        color: '#FFE8E7', // 背景颜色
                        borderColor: '#F7A6A3', // 边框颜色
                    },
                    label: {
                        show: false,
                    },
                    layoutCenter: ['50%', '65%'],
                    layoutSize: 600,
                    // zoom: 1.5, // 当前视角的缩放比例
                    roam: true, // 是否开启鼠标缩放和平移漫游
                    scaleLimit: {min: 1.2, max: 2}, // 滚轮缩放的极限控制
                    // 高亮状态下的多边形和标签样式
                    emphasis: {
                        label: {
                            show: true,
                        },
                        itemStyle: {
                            color: '#F7A6A3',
                        },
                    },
                },
                tooltip: {
                    formatter: function (params) {
                        return `${params.name}`;
                    },
                },
                series: series,
                // 图例
                legend: {
                    show: false, // 不展示默认样式,使用事件切换图例展示
                    selectedMode: 'single', // 设置单选多选模式
                },
            };
            myChart.setOption(option);
    
        }, [])
    
        return 
    { width: '100%', height: '600px' }}>
    }; export default EchartsMap;

    具体的echarts配置可 根据echarts的配置项进行修改Documentation - Apache ECharts 参考

    效果:

    注意事项:registerMap的 名字为 “china”的话。会自动显示南海缩略图 如果不需要则可以换一个名字,我这里用的另外的名字(chinaMap)就没有缩略图

     南海缩略图:

    注: 也可以使用svg方式来实现。原理类似。只是数据 在svg里面了  详情看官方文档

  • 相关阅读:
    大新闻|高通将为Meta定制VR芯片,Quest端Beat Saber售出650万份
    【递归、搜索与回溯算法】第六节.98. 验证二叉搜索树和230. 二叉搜索树中第K小的元素
    通达信接口的定义和实现
    一个简单但是能上分的特征标准化方法
    为网页添加一个弹窗提示音乐播放
    机器学习实验------线性回归方法
    Faster RCNN全文翻译
    容易记混的方法slice、splice、split
    痞子衡嵌入式:在i.MXRT1170上快速点亮一款全新LCD屏的方法与步骤(MIPI DSI接口)
    U盘插入提示格式化才能使用,但里面有数据无法复制出来怎么解决?
  • 原文地址:https://blog.csdn.net/wangshang1320/article/details/127106971
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号