[Echarts可视化] 一.入门篇之简单绘制中国地图和贵州地区

2023-11-14

        最近发生了很多事情,去到了一个新环境学习。但是不论在哪里,我都需要不忘初心,坚持做自己喜欢的事情,在CSDN写博客、教学、爱娜、生活等等。
        这篇文章主要是通过Echarts可视化介绍入门知识、中国地图和贵州地区各省份的数据分析。其中贵州地图才是这篇文章的核心内容。这是一篇入门文章,希望对您有所帮助,如果文章中存在不足之处,还请海涵~
        官网地址:http://echarts.baidu.com/index.html


一. 入门介绍-第一张图

        强烈推荐大家阅读官网的教程进行学习,这里的入门就参考官网内容了。
        官网地址:http://echarts.baidu.com/tutorial.html

        ECharts 特性介绍
        ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖轻量级的 Canvas 类库 ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。

        ECharts 提供了常规的折线图,柱状图,散点图,饼图,K线图,用于统计的盒形图,用于地理数据可视化的地图,热力图,线图,用于关系数据可视化的关系图,treemap,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。

        ECharts 3 中更是加入了更多丰富的交互功能以及更多的可视化效果,并且对移动端做了深度的优化。ECharts 3 开始独立出了“坐标系”的概念,支持了直角坐标系(catesian,同 grid)、极坐标系(polar)、地理坐标系(geo)。图表可以跨坐标系存在,例如折、柱、散点等图可以放在直角坐标系上,也可以放在极坐标系上,甚至可以放在地理坐标系中。

        Echarts入门代码
        
ECharts 3 开始不再强制使用 AMD 的方式按需引入,代码里也不再内置 AMD 加载器。因此引入方式简单了很多,只需要像普通的 JavaScript 库一样用 script 标签引入。
        1.首先下载最新的 echarts.min.js 文件
        下载地址:http://echarts.baidu.com/download.html

        2.在Script中调用该文件,核心代码格式如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <!-- 引入 ECharts 文件 -->
    <script src="echarts.min.js"></script>
</head>
</html>
        3.绘制图形
        下面代码参考我的文章:Echarts字体和线条颜色设置操作笔记

<!DOCTYPE html>  
<html>  
<head>  
    <meta charset="utf-8">  
    <title>ECharts</title>  
    <!-- 引入 echarts.js -->  
    <script src="echarts.min.js"></script>  
</head>  
  
<body>  
    <!-- 为ECharts准备一个具备大小的Dom -->  
    <div align="left" id="main" style="width: 900px;height:500px;"></div>  
    <script type="text/javascript">  
        //基于准备好的dom,初始化echarts实例  
        var myChart = echarts.init(document.getElementById('main'));  
     
        option = {  
            title: {  
                text: '2016年上半年全国规模以上工业企业用水情况(单位:亿立方米)',   
                subtext: '数据来源:国家统计局',  
                x: 'center',  
            },  
            tooltip : {  
                trigger: 'axis',  
                axisPointer : {         
                    //坐标轴指示器,坐标轴触发有效
                    //默认为直线,可选为:'line' | 'shadow'
                    type : 'shadow'           
                }  
            },  
            legend: {  
                orient: 'vertical',  
                x: 'left',  
                y:"top",  
                padding:50,     
                data: ['用水量', '减少量',]  
            },  
            grid: {  
                left: '10',  
                right: '60',  
                bottom: '3%',  
                height: '30%',    
                top: '20%',  
                containLabel: true  
            },  
            xAxis:  {  
                type: 'value',  
                //设置坐标轴字体颜色和宽度  
                axisLine:{  
                    lineStyle:{  
                        color:'yellow',  
                        width:2  
                    }  
                },  
            },  
            yAxis: {  
                type: 'category',    
                axisLine:{  
                    lineStyle:{  
                        color:'yellow',  
                        width:2  
                    }  
                },  
                data: ['东部地区','中部地区','西部地区',]  
            },  
            series: [  
            {  
                name: '用水量',  
                type: 'bar',  
                stack: '总量',  
                label: {  
                    normal: {  
                        show: true,  
                        position: 'insidelift'  
                    }  
                },  
                data: [109.2, 48.2, 41 ]  
            },  
            {  
                name: '减少量',  
                type: 'bar',  
                stack: '总量',  
                label: {  
                    normal: {  
                        show: true,  
                        position: 'insidelift'  
                    }  
                },  
                data: [1.638, 1.0122, 1.025]  
            },  
        ]  
    };  
    myChart.setOption(option);  
    </script>  
</body>  
</html> 
        运行结果如下图所示:




二. 绘制中国地图

        下面是绘制中国地图的代码,网上非常常见,下面简单介绍。
        官方模块地址:http://echarts.baidu.com/download-map.html


        然后下载中国地图的JS或JSON文件,文件名为china.js和china.json。
        代码如下,核心代码是获取id为main的div模块:
        var chart = echarts.init(document.getElementById('main'));

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
   
</head>

<body>
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="width: 600px;height:400px;"></div>
    <!-- 引入 echarts.js -->
    <script src="echarts.min.js"></script>
    <script src="china.js"></script>
    <script>
    var chart = echarts.init(document.getElementById('main'));
    chart.setOption({
        series: [{
            type: 'map',
            map: 'china'
        }]
    });
    </script>
	</div>
</body>
</html>
        运行结果如下:


三. 绘制贵州地图

        这是这篇文章的重点是绘制贵州相关的地图,具体步骤如下。
        从官方下载贵州省的guizhou.js和guizhou.json文件
        官方模块地址:http://echarts.baidu.com/download-map.html
        代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
   
</head>

<body>
    <!-- 为ECharts准备一个具备大小的Dom -->
    <div id="main" style="width: 600px;height:400px;"></div>
    <!-- 引入 echarts.js -->
    <script src="echarts.min.js"></script>
	  <script src="guizhou.js"></script>
    <script>
     var myChart = echarts.init(document.getElementById('main'));
     var option = {
      title: {
       text : '贵州地图',
       subtext : '各市区显示'
      },
      series: [
        {
            name: '数据名称',
        type: 'map',
        mapType: '贵州',
        selectedMode : 'single',
        itemStyle:{
             normal:{label:{show:true}},
             emphasis:{label:{show:true}}
            },
            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)},  
            ]
        }]
      };
     myChart.setOption(option);    
    </script>
	</div>
</body>
</html>
        运行结果如下所示,其中每个省份对应的市州可以在json文件中查找。

核心代码如下,它即可显示贵州省地图。
<script>
    var myChart = echarts.init(document.getElementById('main'));
    var option = {
      title: {
           text : '贵州地图',
           subtext : '各市区显示'
      },
      series: [
        {
            name: '数据名称',
            type: 'map',
            mapType: '贵州',
            selectedMode : 'single',
            itemStyle:{
                 normal:{label:{show:true}},
                 emphasis:{label:{show:true}}
            }
        }]
      };
     myChart.setOption(option);  
</script>




四. 推荐地图博文

        最后推荐一些文章作为在线笔记,全是一些地图操作,希望对你有所帮助。
        1.官网地图浏览:http://echarts.baidu.com/demo.html#map-province

        2.枯鸦专栏:百度Echarts 全国省市地图 动态数据图形报表
           程序媛专栏: ECHARTS-MAP的使用: 中国地图及省份边界的查看



        3.hcy12321专栏:一个让echarts中国地图包含省市轮廓的技巧



        4.liuchonge专栏:Echarts使用二:全国地图与各省市地图联动



        5.dhforsite专栏:echarts 某省下钻某市地图

        6.xianwen专栏:ECharts(中国地图篇)的使用
        7.little2专栏:echarts3 使用总结


        风雪交加雨婆娑,
        琴瑟和鸣泪斑驳。
        不管在哪,依然做自己,
        娜美陪伴,爱还在,且更爱。谢谢,晚安~
        (By:Eastmount 2017-04-09 晚上12点  http://blog.csdn.net/eastmount/ )

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

[Echarts可视化] 一.入门篇之简单绘制中国地图和贵州地区 的相关文章

随机推荐

  • Ora 28547连接服务器失败,可能是Oracle Net 管理错误问题详解(可能是最简单的)

    最近开始学Oracle了 然后安装过程中出现了很多问题 在这就不说了 其实是当时没有保留证据 课上老师说这玩意运气不好了可能一天都装不好 当时我不信 现在我信了 废话不多说 进入正题吧 首先放图 遇到这个问题我首先去找了很多博客 大多数都是
  • QT BUG解决:QMetaObject::connectSlotsByName: No matching signal for xxxxxxxxx

    QT BUG解决 QMetaObject connectSlotsByName No matching signal for xxxxxxxxx 问题描述 采用右键 转到槽 的功能生成的槽函数无法连接到信号 此时会报错该槽没有信号对应 QM
  • Bash编程语法

    变量 a 10 定义一个变量 echo a 输出变量a unset a 删除变量a readonly b b变量只读 只读变量不能删除 字符串 name asdsdsd 拼接字符串 name2 hello name 数组 arrayname
  • 快速序列化组件MessagePack介绍

    简介 MessagePack for C MessagePack CSharp 是用于C 的极速MessagePack序列化程序 比MsgPack Cli快10倍 与其他所有C 序列化程序相比 具有最好的性能 MessagePack for
  • arduino 智能车组装步骤_Arduino智能小车硬件安装说明

    1 工具准备 安装过程中可能用到以下工具 请提前准备好 2 小车地盘组装 按小车底盘组装说明组装小车底盘 说明截图如下 三 安装船型开关及电池盒 如下图 船型开关从底部按进 两侧引出电源开关线 电池盒如图安装 电池盒红线 正极 接船型开关
  • Qt SVG Viewer Example 看看看~

    Qt提供在widgets和其他paint device上渲染和展示SVG的类 本例就允许用户载入SVG文件并在QGraphicsView上用QGraphicsSvgItem显示它 并且例子还可以选择渲染者 QGraphicsView可以用Q
  • 【华为OD】

    华为OD试题注意事项 使用合适的编程语言 在华为OD机试中多数情况下使用C 或Java 按照题目要求进行编码 仔细阅读题目描述并理解要求 在编码前可以进行伪代码编写或画流程图有助于理解和排除逻辑错误 注意代码的规范性 注重代码的可读性和可维
  • vulnhub-Kioptrix2014靶场

    以下演示在测试环境进行 遵纪守法 靶场下载地址Kioptrix 2014 5 VulnHub 看网上都说这个靶场 在下载之后运行前 需要将靶场默认网卡卸载 之后再重新添加网卡 不然获取不到IP 本着听人劝 吃饱饭原则 安装前辈经验操作 信息
  • 冒泡排序和鸡尾酒排序

    传统冒泡排序 import java util Arrays author 新新 ClassName BubbleSort Description 冒泡排序 date 2022年03月17日 public class BubbleSort1
  • 快手春节现金褥羊毛活动 (攻略)

    注册得10元 扫描下面二维码 手机注册 然后下载快手 使用该手机号登陆后 10元到手 注意 一定要下载快手 该手机号登陆 只有新用户新设备才有10元 标题快手春节红包6亿活动中的组队PK活动 先放入口地址 微信扫一扫 点击下图 重要的规则
  • springcloud 微服务之间传递token解决方案

    后续更新地址 https www aiprose com blog 36 在springcloud 微服务中大部分是通过token来验证用户的 那么有个问题 假设现在有A服务 B服务 外部使用RESTApi请求调用A服务 在请求头上有tok
  • 华为手机信息

    手机相关 荣耀手机产品线包括V系列 HONOR系列 X系列以及Play系列 V系列的第一代手机 V8 magic系列第一代手机 荣耀magic 2016 X系列第一代手机 X3 2013 Play系列第一代手机 Play 2018 HONO
  • 人脸识别手把手教学传送门

    http t csdn cn cVdHb
  • 2023 hdu 第10场 1004 Do you Like Interactive Problem

    Problem Description 现在有一个整数 x x x 1 x n
  • 分布式集群框架——Google文件系统GFS

    Google文件系统GFS Google文件系统 Google File System GFS 是一个大型的分布式文件系统 它为Google云计算提供海量存储 并且与Chubby MapReduce以及Bigtable等技术结合十分紧密 处
  • jenkins 配置root用户

    修改用户为root 避免权限导致的问题 vim etc sysconfig jenkins 修改目录权限 chown R root root var lib jenkins chown R root root var cache jenki
  • 数据库系列MySQL:优化配置文件

    配置流程 1 MySQL文件目录中后缀名为 ini文件的就是MySQL的默认配置文件 2 程序启动会先加载配置文件中的的配置 之后才会真正启动程序 3 更改完配置文件设置后需要重新启动服务端才可以生效 优化方案一 服务器内存 4 8GB k
  • linux释放buff/cache缓存空间

    当free m发现操作系统buff cache占用缓存过高导致可用内存过小时 这是后需要手动释放一下缓存 输入命令 echo 3 gt proc sys vm drop caches
  • Flask App 数据发送到 PostgreSQL 数据库

    对象关系映射器 如果您计划制作任何类型的现代 Web 服务 那么管理通过网站或应用程序的数据流是一项需要掌握的关键技能 使用flask 对象关系映射器 ORM 被用来让你的应用程序与关系数据库进行交互 对象关系映射器是一个框架 在我们的例子
  • [Echarts可视化] 一.入门篇之简单绘制中国地图和贵州地区

    最近发生了很多事情 去到了一个新环境学习 但是不论在哪里 我都需要不忘初心 坚持做自己喜欢的事情 在CSDN写博客 教学 爱娜 生活等等 这篇文章主要是通过Echarts可视化介绍入门知识 中国地图和贵州地区各省份的数据分析 其中贵州地图才