echarts 根据geojson 数据绘制区域图(精确到镇)
步骤:1)先获取区域(县、镇)json数据 ;2)使用echarts 绘制地图;
先上一波效果图(昆明市东川区)

一、获取区域json数据
1、下载工具“水经微图”,
2、下载东川区,以及东川区各个镇的kml文件

选择影像——50M以下

注意:要下载,东川区,东川区下的每个镇;
3、打开网站( http://geojson.io ),合成地图生成json数据

点击open——file 打开从水径微图下载的文件,选择后缀名为.kml 的文件,从区到镇依次添加,不可以先添加镇

最终合成

然后点击save——geojson 下载文件
4、将json数据复制到目录下并将文件后缀名改为.json
5、要给json数据里面的每一块区域设置名字,

二、使用echarts 将地图绘制出来
html代码:
<div id="allmap" style="width:100%;height:600px"> //必须设置宽高 </div>
js 代码:
var chartDom = document.getElementById('allmap');
var myChart = echarts.init(chartDom);
var option;
/* myChart.showLoading(); */
var myChart = echarts.init(document.getElementById('allmap'));
$.get('../geojson/map.json', function(geoJson) {
echarts.registerMap('map', geoJson, {});
var option = {
tooltip: {
trigger: 'item',
/* formatter: '{b}<br/>{c} (p / km2)' */
formatter: function(params) { //用于显示多个数据
var res = params.name + '<br/>';
var myseries = option.series;
for (var i = 0; i < myseries.length; i++) {
for (var j = 0; j < myseries[i].data.length; j++) {
if (myseries[i].data[j].name == params.name) {
res += myseries[i].name + ' : ' + myseries[i].data[j].value + '</br>';
}
}
}
return res;
}
},
visualMap: {
min: 500,
max: 50000,
text: ['High', 'Low'],
left: 'right',
realtime: false,
calculable: true,
show:false,
inRange: {
color: ['#313695', '#4575b4', '#74add1', '#abd9e9', '#e0f3f8', "#718cef", "#947aad"]
}
},
series: [{
name: '碳排放',
type: 'map',
mapType: 'map',
aspectScale: 0.85, //地图长度比
label: {
normal: {
show: true,
textStyle: {
color: '#000'
}
},
emphasis: {
show: true,
textStyle: {
color: '#333'
}
}
},
data: [{
name: '阿旺镇',
value: 17000
},
/* {name: '阿旺镇', value: 19000}, */
{
name: '红土地镇',
value: 1000
},
{
name: '舍块乡',
value: 5000
},
{
name: '汤丹镇',
value: 20000
},
{
name: '铜都街道',
value: 25000
},
{
name: '拖布卡镇',
value: 30000
},
{
name: '乌龙镇',
value: 18000
},
{
name: '因民镇',
value: 2300
},
]
}
]
};
myChart.setOption(option);
});
——————end————————
echarts 根据geojson 数据绘制区域图(精确到镇)的更多相关文章
- Excel应该这么玩——7、我是预言家:绘制趋势图
让我们先看一个场景:你是公司销售部的员工,你手里有公司最近几年的销售额相关的数据,经理希望你预测下个月的销售额.盯着一堆数据,你或许会想到画一张XY坐标图,然后将每个月份的销售额标定为一个坐标.但是下 ...
- 利用JFreeChart生成区域图 (5) (转自 JSP开发技术大全)
利用JFreeChart生成区域图 (5) (转自 JSP开发技术大全) 14.5 利用JFreeChart生成区域图 通过JFreeChart插件只能生成普通效果的区域图,利用工厂类ChartFac ...
- R绘图 第六篇:绘制线图(ggplot2)
线图是由折线构成的图形,线图是把散点从左向右用直线连接起来而构成的图形,在以时间序列为x轴的线图中,可以看到数据增长的趋势. geom_line(mapping = NULL, data = NULL ...
- echarts地图边界数据的实时获取与应用,省市区县多级联动【附最新geoJson文件下载】
首先,来看下效果图 在线体验地址:https://hxkj.vip/demo/echartsMap/,并提供实时geoJson数据文件下载 echarts官方社区链接地址(可在线编辑):https:/ ...
- python3 读取txt文件数据,绘制趋势图,matplotlib模块
python3 读取txt文件数据,绘制趋势图 test1.txt内容如下: 时间/min cpu使用率/% 内存使用率/% 01/12-17:06 0.01 7.61 01/12-17:07 0.0 ...
- 【带着canvas去流浪(7)】绘制水球图
目录 一. 任务说明 二. 重点提示 三. 示例代码 四. 文字淹水效果的实现 五. 关于canvas抗锯齿 六. 小结 示例代码托管在:http://www.github.com/dashnowor ...
- 【带着canvas去流浪(6)】绘制雷达图
目录 一. 任务说明 二. 重点提示 三. 示例代码 示例代码托管在:http://www.github.com/dashnowords/blogs 博客园地址:<大史住在大前端>原创博文 ...
- 带着canvas去流浪系列之七 绘制水球图
[摘要] 用原生canvasAPI实现百度echarts 示例代码托管在:http://www.github.com/dashnowords/blogs 一. 任务说明 使用原生canvasAPI绘制 ...
- 带着canvas去流浪系列之六 绘制雷达图
[摘要] 用canvas原生API实现百度Echarts基本图表. 示例代码托管在:http://www.github.com/dashnowords/blogs 一. 任务说明 使用原生canvas ...
随机推荐
- 在写脚本时,在一开始(Shebang 之后)就加上这一句,或者它的缩略版: set -xeuo pipefail
编写可靠 bash 脚本的一些技巧 腾讯技术工程 已认证的官方帐号 1,254 人赞同了该文章 写过很多 bash 脚本的人都知道,bash 的坑不是一般的多. 其实 bash 本身并不是一个 ...
- CentOS7启动SSH服务报:Job for ssh.service failed because the control process exited with error code
CentOS7启动SSH服务报:Job for ssh.service failed because the control process exited with error code....... ...
- dmesg -w 查看硬件参数
dmesg -w 查看硬件参数 14,笔记本硬件问题,使用dmesg -w可以看到,内核不断受到硬件过来的热插拔信号
- cron 任务的典型格式是: 分钟(0-59) 小时(0-24) 日(1-31) 月(1-12) 星期(0-6) 要执行的命令
https://linux.cn/article-9687-1.html Cron 是您可以在任何类 Unix 操作系统中找到的最有用的实用程序之一.它用于安排命令在特定时间执行.这些预定的命令或任务 ...
- Centos7 docker容器启动后添加端口映射
docker容器启动后添加端口映射的两种方法: 一.通过修改防火墙策略添加端口映射 docker容器已创建好,但是想在容器内配置tomcat监控,需要新的端口去访问,但是映射时没有映射多余端口,此时, ...
- 一个很好的网站 有3D漂浮框 有动态小人数字时钟
http://www.cnblogs.com/jingmoxukong/p/7867397.html
- untiy项目中使用MD5加密
没有详细研究过暂时贴上代码以便以后研究: public static string MD5Encrypt(string strText) { MD5 md5 = MD5.Create(); byte[ ...
- 【补档_STM32单片机】脉搏波采集显示硬件设计
一.脉搏波简介 脉搏一般情况下指的都是动脉脉搏.每分钟的脉搏次数称为脉率,正常情况下与心率是一致的.心脏的一次收缩和舒张成为一个心动周期.在每个心动周期内,心室的收缩和舒张会引起脉内压力的周期性波 ...
- 一:windows10开启虚拟化服务(也可用于部署docker提前准备)
查看虚拟化已开启: 如果未启用,则需要添加虚拟化功能:控制面板 -> 启用或关闭Windows功能 选择Hyper-V的所有功能,确定: 系统会自动搜索并安装功能.安装完毕即可. 完结,撒花~~
- js动态加载HTML元素时出现的无效的点击事件
项目中列表数据中隐藏着详情数据, 图一: 详情数据是:根据当前行的数据作为参数,通过ajax请求到后台返回的数据,再根据返回的结果动态生成HTML页面 图二: js文件中的这些js的点击事件无效: j ...