array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 echarts.制作中国地图,点击对应的省市链接到该省份的详细介绍 - 爱码网
yanzai

今天花了一天的时间,用echart弄了一个效果,是从中国地图点进去身份并把改省份的数据渲染出来的效果,刚开始完全没有头绪,只能硬着头皮去看百度echart的api,和博客,看了半天,好家伙,终于给我找到了对应的案列,不多说,看代码,这里采用的是echart2的版本

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>碳普惠</title>
<link rel="stylesheet" type="text/css" href="../statics/css/reset.css"/>
</head>
<body>
<div id="china"></div>
<script src="../statics/js/echarts/build/dist/echarts.js"></script>
</body>
</html>

《第一步》配置echart路径,这里我采用了相对路径,详细说明可以看http://echarts.baidu.com/echarts2/doc/start.html?qq-pf-to=pcqq.c2c

require.config({
paths: {
echarts: \'../statics/js/echarts/build/dist\'
}
})

《第二步》配置地图

require([\'echarts\', \'echarts/chart/map\'], function(ch) {
// 基于准备好的dom,初始化echarts图表
var myChart = ch.init(document.getElementById(\'china\'));
option = {
tooltip: {
trigger: \'item\',
formatter: \'{b}\'
},
dataRange: { //柱子的设置
min: 0,
max: 100,
x: \'left\',
y: \'10%\',
text: [\'高\', \'低\'], // 文本,默认为数值文本
textStyle: {
color: \'white\'
},
color: [\'#00d970\', \'#b3ffa7\', \'#9ae1ff\'],
calculable: true,
inRange: {
color: [\'#00d970\', \'#b3ffa7\', \'#9ae1ff\'],
}
},
series: [{
name: \'中国\',
type: \'map\',
mapType: \'china\', //可以是world,省份中文名
selectedMode: \'single\', //multiple多选
mapLocation: {
x: "10%",
y: "center"
},
itemStyle: {
normal: {
label: {
show: true,
textStyle: {
color: "#231816"
}
},
areaStyle: {
color: \'#B1D0EC\'
},
color: \'#B1D0EC\',
borderColor: \'#dadfde\' //区块的边框颜色
},
emphasis: { //鼠标hover样式
label: {
show: true,
textStyle: {
color: \'#fa4f04\'
}
}
}
},
data: [{
name: \'北京\',
value: 100
}, {
name: \'天津\',
value: 0
}, {
name: \'上海\',
value: 60
}, {
name: \'重庆\',
value: 0
}, {
name: \'河北\',
value: 60
}, {
name: \'河南\',
value: 60
}, {
name: \'云南\',
value: 0
}, {
name: \'辽宁\',
value: 0
}, {
name: \'黑龙江\',
value: 0
}, {
name: \'湖南\',
value: 60
}, {
name: \'安徽\',
value: 0
}, {
name: \'山东\',
value: 60
}, {
name: \'新疆\',
value: 0
}, {
name: \'江苏\',
value: 0
}, {
name: \'浙江\',
value: 0
}, {
name: \'江西\',
value: 0
}, {
name: \'湖北\',
value: 60
}, {
name: \'广西\',
value: 60
}, {
name: \'甘肃\',
value: 0
}, {
name: \'山西\',
value: 60
}, {
name: \'内蒙古\',
value: 0
}, {
name: \'陕西\',
value: 0
}, {
name: \'吉林\',
value: 0
}, {
name: \'福建\',
value: 0
}, {
name: \'贵州\',
value: 0
}, {
name: \'广东\',
value: 597
}, {
name: \'青海\',
value: 0
}, {
name: \'西藏\',
value: 0
}, {
name: \'四川\',
value: 60
}, {
name: \'宁夏\',
value: 0
}, {
name: \'海南\',
value: 60
}, {
name: \'台湾\',
value: 0
}, {
name: \'香港\',
value: 0
}, {
name: \'澳门\',
value: 0
}]
}]
};

<!--这里是方法一跳转要去的链接-->
var ecConfig = require(\'echarts/config\');
myChart.on(ecConfig.EVENT.MAP_SELECTED, function(param) {
var selected = param.selected;
var selectedProvince;
var name;
for (var i = 0, l = option.series[0].data.length; i < l; i++) {
name = option.series[0].data[i].name;
option.series[0].data[i].selected = selected[name];
if (selected[name]) {
selectedProvince = name;//这里的selectedProvince为中文,传到浏览器链接的时候可能会乱码,处理方法可以去百度
}
}
if (typeof selectedProvince == \'undefined\') {
option.series.splice(1);
option.legend = null;
option.dataRange = null;
myChart.setOption(option, true);
return;
}
var urlArr = [\'44\', \'55\', \'44\'];
for (var p in selected) {
if (selected[p]) {
switch (p) {
case \'河南\':
location.href = \'provinceMap.html?proviceId=\' + urlArr[0] + \'&&proviceName=\' + selectedProvince;
break;
case \'重庆\':
location.href = \'provinceMap.html?proviceId=\' + urlArr[1] + \'&&proviceName=\' + selectedProvince;
break;
case \'广东\':
location.href = \'provinceMap.html?proviceId=\' + urlArr[2] + \'&&proviceName=\' + selectedProvince;
break;
default:
break;
}

}
}
});

//end

《这里为方法2跳转的链接》

myChart.on(\'click\', function(param) {
var name = param.name;

alert(name)
for (var n = 0, nL = cityArr.length; n < nL; n++) {
if (name == cityArr[n].name) {//这里判断所点击的省份是否等于该处的数据,如果等于则把该省份的对应的id赋值到链接以便省份页面可以获取到该id调用数据

location.href = \'provinceMap.html?proviceId=\' + cityArr[n].id + \'&&proviceName=\' + name;
break;
} else {
console.log(name)
}
}

});

//end
// 为echarts对象加载数据
myChart.setOption(option);
});

电脑不够大但为了清晰只截了一部分

 《第三步》进去省页面的时候,通过链接获取上一个页面的selectedProvince的值,

执行下面的js即可

// 指定图表的配置项和数据
require.config({
paths: {
echarts: \'../statics/js/echarts/build/dist\'
}
})
require([\'echarts\', \'echarts/chart/map\'], function(ch) {
// 基于准备好的dom,初始化echarts图表
var myChart = ch.init(document.getElementById(\'province\'));
option = {
tooltip: {
trigger: \'item\',
formatter: \'{b}\'
},
dataRange: {
show: false,
min: 0,
max: 100,
x: \'left\',
y: \'bottom\',
text: [\'高\', \'低\'], // 文本,默认为数值文本
color: [\'#00d970\', \'#b3ffa7\', \'#9ae1ff\'],
calculable: true,
inRange: {
color: [\'#9ae1ff\', \'#b3ffa7\', \'#00d970\'],
}
},
series: [{
name: \'中国\',
type: \'map\',
mapType: selectedProvince,//通过链接获取
itemStyle: {
normal: {
label: {
show: true,
textStyle: {
color: "#231816"
}
},
areaStyle: {
color: \'#B1D0EC\'
},
color: \'#B1D0EC\',
borderColor: \'#dadfde\' //区块的边框颜色
},
emphasis: { //鼠标hover样式
label: {
show: true,
textStyle: {
color: \'#fa4f04\'
}
}
}
},
data: [{//这里的数据应该是动态的,但这里只是弄一个效果出来看看,所以模拟了数据
\'name\': \'广州市\',
value: 785.21
}, {
\'name\': \'韶关市\',
value: 0
}, {
\'name\': \'河源市\',
value: 0
}, {
\'name\': \'东莞市\',
value: 0
}, {
\'name\': \'佛山市\',
value: 0
}, {
\'name\': \'惠州市\',
value: 0
}, {
\'name\': \'珠海市\',
value: 0
}, {
\'name\': \'中山市\',
value: 0
}]
}]
};
// 为echarts对象加载数据
myChart.setOption(option);
});

分类:

技术点:

相关文章: