我已经把demo上传到这里,http://download.csdn.net/detail/lee1169639/9919255,免费下载
由于工作需要可能用到echarts的地图下钻功能,说实话,网上写地图下钻的就那么几篇文章都是大同小异,然后我还弄不太明白,就自己写了这个。
代码写的不好,请大家多提意见。
话不多说,进入正题(为了像我一样的新手看的明白说的自仔细一点)。
首先引入js文件
<script src="js/echarts.js"></script>
<script src="js/china.js"></script>
<script src="js/all-province.js"></script>
<script src="js/change-map.js"></script>
其中all-rovice.js是中国各省、直辖市等的js集合,change-map.js是我自己写的js。
然后在html页面建立装echarts图形的容器
<div id="map" style="width: 100%; height: 100%;"></div>
function changeMap(){
var myChart= echarts.init(document.getElementById('map'));
option = {
tooltip: {
trigger: 'item',
formatter: '{b}'
},
series: [
{
name: '中国',
type: 'map',
mapType: 'china',
selectedMode : 'single',
label: {
normal: {
show: true
},
emphasis: {
show: true
}
},
data:[
]
}
]
};
var Province = "";
myChart.on('click', function (params){
var myChart= echarts.init(document.getElementById('map'));
Province = params.name;
option = {
tooltip: {
trigger: 'item',
formatter: '{b}'
},
series: [
{
name: '中国',
type: 'map',
mapType: Province,
selectedMode : 'single',
label: {
normal: {
show: true
},
emphasis: {
show: true
}
},
data:[
]
}
]
};
myChart.on('click', function (params){
changeMap();
});
myChart.setOption(option);
window.addEventListener("resize",function(){
myChart.resize();
});
});
myChart.setOption(option);
window.addEventListener("resize",function(){
myChart.resize();
});
}
这个函数是为了图形能够自适应加上的。
window.addEventListener("resize",function(){
myChart.resize();
});
其实地图省级到市级,市级到县级的下钻也都类似,把中国地图换成省级地图或者市级地图,把js文件换成市级或者县级的就可以实现了。
如果这样看不明白,请到这个地址下载http://download.csdn.net/detail/lee1169639/9919255,我已经把demo上传到这里,免费的。