01
EFFECT DRAWWING
效果图

02
LANGUAGES
代码语言
1、echarts+world.js
2、国家为单位,悬浮高亮
3、支持国家点击事件
4、尺寸:1920px*1080px
03
CONSTRUCTION
文件目录结构

04
JAVASCRIPT
JS部分
var myChart = echarts.init(document.getElementById('main'));
option = {
title : {
text: '世界闽商分布',
subtext: '世界闽商分布明细',
sublink : 'https://www.zeropo.com.cn',
x:'center',
y:'top',
textStyle: {//主标题文本样式{"fontSize": 18,"fontWeight": "bolder","color": "#333"}
fontFamily: 'Arial, Verdana, sans...',
fontSize: 180,
fontStyle: 'bolder',
fontWeight: 'normal',
color:'#fff'
},
subtextStyle: {//副标题文本样式{"color": "#aaa"}
fontFamily: 'Arial, Verdana, sans...',
fontSize: 12,
fontStyle: 'normal',
fontWeight: 'normal',
color:'#ebebeb'
},
},
tooltip : {
trigger: 'item',
formatter : function (params) {
var value = (params.value + '').split('.');
value = value[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g, '$1,')
+ '.' + value[1];
return params.seriesName + '<br/>' + params.name + ' : ' + value;
}
},
toolbox: {
show : true,
orient : 'vertical',
x: 'right',
y: 'center',
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
restore : {show: true},
saveAsImage : {show: true}
}
},
dataRange: {
min: 0,
max: 1000000,
text:['High','Low'],
realtime: false,
calculable : true,
color: ['orangered','yellow','lightskyblue']
},
series : [
{
name: '闽商数 (2010)',
type: 'map',
mapType: 'world',
roam: true,
mapLocation: {
y : 60
},
itemStyle:{
emphasis:{label:{show:true}}
},
data:[
{name : 'Afghanistan', value : 28397.812},
{name : 'Angola', value : 19549.124},
{name : 'Albania', value : 3150.143},
{name : 'United Arab Emirates', value : 8441.537},
{name : 'Argentina', value : 40374.224},
{name : 'Armenia', value : 2963.496},
{name : 'French Southern and Antarctic Lands', value : 268.065},
{name : 'Australia', value : 22404.488},
{name : 'Austria', value : 8401.924},
{name : 'Azerbaijan', value : 9094.718},
{name : 'Burundi', value : 9232.753},
{name : 'Belgium', value : 10941.288},
{name : 'Benin', value : 9509.798},
{name : 'Burkina Faso', value : 15540.284},
{name : 'Bangladesh', value : 151125.475},
{name : 'Bulgaria', value : 7389.175},
{name : 'The Bahamas', value : 66402.316},
{name : 'Bosnia and Herzegovina', value : 3845.929},
{name : 'Belarus', value : 9491.07},
{name : 'Belize', value : 308.595},
{name : 'Bermuda', value : 64.951},
{name : 'Bolivia', value : 716.939},
{name : 'Brazil', value : 195210.154},
{name : 'Brunei', value : 27.223},
{name : 'Bhutan', value : 716.939},
{name : 'Botswana', value : 1969.341},
{name : 'Central African Republic', value : 4349.921},
{name : 'Canada', value : 34126.24},
{name : 'Switzerland', value : 7830.534},
{name : 'Chile', value : 17150.76},
{name : 'China', value : 1359821.465},
{name : 'Ivory Coast', value : 60508.978},
{name : 'Cameroon', value : 20624.343},
{name : 'Democratic Republic of the Congo', value : 62191.161},
{name : 'Republic of the Congo', value : 3573.024},
{name : 'Colombia', value : 46444.798},
{name : 'Costa Rica', value : 4669.685},
{name : 'Cuba', value : 11281.768},
{name : 'Northern Cyprus', value : 1.468},
{name : 'Cyprus', value : 1103.685},
{name : 'Czech Republic', value : 10553.701},
{name : 'Germany', value : 83017.404},
{name : 'Djibouti', value : 834.036},
{name : 'Denmark', value : 5550.959},
{name : 'Dominican Republic', value : 10016.797},
{name : 'Algeria', value : 37062.82},
{name : 'Ecuador', value : 15001.072},
{name : 'Egypt', value : 78075.705},
{name : 'Eritrea', value : 5741.159},
{name : 'Spain', value : 46182.038},
{name : 'Estonia', value : 1298.533},
{name : 'Ethiopia', value : 87095.281},
{name : 'Finland', value : 5367.693},
{name : 'Fiji', value : 860.559},
{name : 'Falkland Islands', value : 49.581},
{name : 'France', value : 63230.866},
{name : 'Gabon', value : 1556.222},
{name : 'United Kingdom', value : 62066.35},
{name : 'Georgia', value : 4388.674},
{name : 'Ghana', value : 24262.901},
{name : 'Guinea', value : 10876.033},
{name : 'Gambia', value : 1680.64},
{name : 'Guinea Bissau', value : 10876.033},
{name : 'Equatorial Guinea', value : 696.167},
{name : 'Greece', value : 11109.999},
{name : 'Greenland', value : 56.546},
{name : 'Guatemala', value : 14341.576},
{name : 'French Guiana', value : 231.169},
{name : 'Guyana', value : 786.126},
{name : 'Honduras', value : 7621.204},
{name : 'Croatia', value : 4338.027},
{name : 'Haiti', value : 9896.4},
{name : 'Hungary', value : 10014.633},
{name : 'Indonesia', value : 240676.485},
{name : 'India', value : 1205624.648},
{name : 'Ireland', value : 4467.561},
{name : 'Iran', value : 240676.485},
{name : 'Iraq', value : 30962.38},
{name : 'Iceland', value : 318.042},
{name : 'Israel', value : 7420.368},
{name : 'Italy', value : 60508.978},
{name : 'Jamaica', value : 2741.485},
{name : 'Jordan', value : 6454.554},
{name : 'Japan', value : 127352.833},
{name : 'Kazakhstan', value : 15921.127},
{name : 'Kenya', value : 40909.194},
{name : 'Kyrgyzstan', value : 5334.223},
{name : 'Cambodia', value : 14364.931},
{name : 'South Korea', value : 51452.352},
{name : 'Kosovo', value : 97.743},
{name : 'Kuwait', value : 2991.58},
{name : 'Laos', value : 6395.713},
{name : 'Lebanon', value : 4341.092},
{name : 'Liberia', value : 3957.99},
{name : 'Libya', value : 6040.612},
{name : 'Sri Lanka', value : 20758.779},
{name : 'Lesotho', value : 2008.921},
{name : 'Lithuania', value : 3068.457},
{name : 'Luxembourg', value : 507.885},
{name : 'Latvia', value : 2090.519},
{name : 'Morocco', value : 31642.36},
{name : 'Moldova', value : 103.619},
{name : 'Madagascar', value : 21079.532},
{name : 'Mexico', value : 117886.404},
{name : 'Macedonia', value : 507.885},
{name : 'Mali', value : 13985.961},
{name : 'Myanmar', value : 51931.231},
{name : 'Montenegro', value : 620.078},
{name : 'Mongolia', value : 2712.738},
{name : 'Mozambique', value : 23967.265},
{name : 'Mauritania', value : 3609.42},
{name : 'Malawi', value : 15013.694},
{name : 'Malaysia', value : 28275.835},
{name : 'Namibia', value : 2178.967},
{name : 'New Caledonia', value : 246.379},
{name : 'Niger', value : 15893.746},
{name : 'Nigeria', value : 159707.78},
{name : 'Nicaragua', value : 5822.209},
{name : 'Netherlands', value : 16615.243},
{name : 'Norway', value : 4891.251},
{name : 'Nepal', value : 26846.016},
{name : 'New Zealand', value : 4368.136},
{name : 'Oman', value : 2802.768},
{name : 'Pakistan', value : 173149.306},
{name : 'Panama', value : 3678.128},
{name : 'Peru', value : 29262.83},
{name : 'Philippines', value : 93444.322},
{name : 'Papua New Guinea', value : 6858.945},
{name : 'Poland', value : 38198.754},
{name : 'Puerto Rico', value : 3709.671},
{name : 'North Korea', value : 1.468},
{name : 'Portugal', value : 10589.792},
{name : 'Paraguay', value : 6459.721},
{name : 'Qatar', value : 1749.713},
{name : 'Romania', value : 21861.476},
{name : 'Russia', value : 21861.476},
{name : 'Rwanda', value : 10836.732},
{name : 'Western Sahara', value : 514.648},
{name : 'Saudi Arabia', value : 27258.387},
{name : 'Sudan', value : 35652.002},
{name : 'South Sudan', value : 9940.929},
{name : 'Senegal', value : 12950.564},
{name : 'Solomon Islands', value : 526.447},
{name : 'Sierra Leone', value : 5751.976},
{name : 'El Salvador', value : 6218.195},
{name : 'Somaliland', value : 9636.173},
{name : 'Somalia', value : 9636.173},
{name : 'Republic of Serbia', value : 3573.024},
{name : 'Suriname', value : 524.96},
{name : 'Slovakia', value : 5433.437},
{name : 'Slovenia', value : 2054.232},
{name : 'Sweden', value : 9382.297},
{name : 'Swaziland', value : 1193.148},
{name : 'Syria', value : 7830.534},
{name : 'Chad', value : 11720.781},
{name : 'Togo', value : 6306.014},
{name : 'Thailand', value : 66402.316},
{name : 'Tajikistan', value : 7627.326},
{name : 'Turkmenistan', value : 5041.995},
{name : 'East Timor', value : 10016.797},
{name : 'Trinidad and Tobago', value : 1328.095},
{name : 'Tunisia', value : 10631.83},
{name : 'Turkey', value : 72137.546},
{name : 'United Republic of Tanzania', value : 44973.33},
{name : 'Uganda', value : 33987.213},
{name : 'Ukraine', value : 46050.22},
{name : 'Uruguay', value : 3371.982},
{name : 'United States of America', value : 312247.116},
{name : 'Uzbekistan', value : 27769.27},
{name : 'Venezuela', value : 236.299},
{name : 'Vietnam', value : 89047.397},
{name : 'Vanuatu', value : 236.299},
{name : 'West Bank', value : 13.565},
{name : 'Yemen', value : 22763.008},
{name : 'South Africa', value : 51452.352},
{name : 'Zambia', value : 13216.985},
{name : 'Zimbabwe', value : 13076.978}
]
}
]
};
myChart.setOption(option);
//点击事件,根据点击某个省份计算出这个省份的数据
var dom='';
dom +='<div class="window">';
dom +='<li> <a href="'+'http://www.zeropo.com'+'"><em>福建: </em><span>300</span> </a></li>';
dom +='<li><em>南京: </em><span>10</span> </li>';
dom +='<li><em>广东: </em><span>10</span> </li>';
dom +='<li><em>北京: </em><span>5</span> </li>';
dom +='<li><em>上海: </em><span>80</span> </li>';
dom +='<li><em>云南: </em><span>80</span> </li>';
dom +='<li><em>乌鲁木齐: </em><span>100</span> </li>';
dom +='</div>';
var dom1='';
dom1 +='<div class="window">';
dom1 +='<li><em>洛杉矶: </em><span>300</span> </li>';
dom1 +='<li><em>华盛顿: </em><span>10</span> </li>';
dom1 +='<li><em>尼克斯: </em><span>10</span> </li>';
dom1 +='<li><em>纽约: </em><span>5</span> </li>';
dom1 +='<li><em>德克莎斯: </em><span>80</span> </li>';
dom1 +='<li><em>迈阿密: </em><span>80</span> </li>';
dom1 +='<li><em>夏威夷: </em><span>100</span> </li>';
dom1 +='</div>';
var dom2='';
dom2 +='<div class="window">';
dom2 +='<li><em>悉尼: </em><span>300</span> </li>';
dom2 +='<li><em>堪培拉: </em><span>10</span> </li>';
dom2 +='<li><em>维多利亚州: </em><span>10</span> </li>';
dom2 +='<li><em>西澳大利亚州: </em><span>5</span> </li>';
dom2 +='<li><em>德克莎斯: </em><span>80</span> </li>';
dom2 +='</div>';
var _info = document.getElementById('J-info');
myChart.on('click', function (params) {
if(params.data.name=='China'){
_info.innerHTML=dom;
_info.style.display="block";
};
if(params.data.name=='Australia'){
_info.innerHTML=dom2;
_info.style.display="block";
};
if(params.data.name=='United States'){
_info.innerHTML=dom1;
_info.style.display="block";
};
//逻辑控制
});05
Cascading Style Sheet
CSS部分
@charset "UTF-8";
/*最外层m-wrold GO*/
body {
background: radial-gradient(circle, #047192 0, #000 100%);
}
.m-world {
position: relative;
}
.m-world .main {
width: 100%;
height: 100vh;
overflow: hidden;
}
.window li {
color: red;
}
.window a {
color: #ffffff;
}
.m-world .info {
display: none;
background: radial-gradient(circle, #05d9dd 0, #03253e 100%);
position: fixed;
top: 50px;
right: 50px;
z-index: 99;
border: 1px solid #03ebef;
width: 250px;
height: 300px;
overflow-x: hidden;
padding: 20px;
}
.m-world .info.show {
display: block;
}
.m-world .window {
margin: 1px;
width: 248px;
}
.m-world .window li {
color: #fff;
list-style: none;
}
.m-world .window em {
font-style: normal;
}
/*滚动条的宽度*/
::-webkit-scrollbar {
width: 9px;
height: 9px;
}
/*外层轨道。可以用display:none让其不显示,也可以添加背景图片,颜色改变显示效果*/
::-webkit-scrollbar-track {
width: 6px;
background-color: #0d1b20;
-webkit-border-radius: 2em;
-moz-border-radius: 2em;
border-radius: 2em;
}
/*滚动条的设置*/
::-webkit-scrollbar-thumb {
background-color: #606d71;
background-clip: padding-box;
min-height: 28px;
-webkit-border-radius: 2em;
-moz-border-radius: 2em;
border-radius: 2em;
}
/*滚动条移上去的背景*/
::-webkit-scrollbar-thumb:hover {
background-color: #fff;
}04
HTML DOCUMENT
DOM部分
<!DOCTYPE html> <html> <head> <title>世界地图</title> <meta charset="UTF-8"> <link rel="stylesheet" type="text/css" href="css/index.css"> </head> <body> <div class="m-world"> <div class="info" id="J-info"></div> <div id="main" class="main"></div> </div> </body> </html> <script src="js/echarts.min.js"></script> <script src="js/world.js"></script> <script src="js/index.js"></script>
如果需要调整图表参数,可以到开源的echartjs官网查阅:
https://echarts.apache.org/
登录情况对已下载过的代码包可以重复下载。如果未登录支付下载,想二次下载,可通过右侧公众号联系客服,绑定登录账号下载。
©软件著作权归平台所有。本站所有软件均来源于本平台开发团队手写代码,供学习使用!
代码使用的结构为开源的VUE+开源的echartJS。
转载请注明出处: codding » 【VUE】Echartjs世界地图 世界地图图表

