Echarts和vue画个中国地图

vue

<template>

<div class="map">

<p>各经销商所在地获客量</p>

<div class="hr"></div>

<div class="chinaIcon">

<div ref="myChartChina" style="height: 100%; width: 100%"></div>

</div>

<!-- <img src="../../assets/img/expect.png" alt=""> -->

</div>

</template>

<script lang=\'ts\'>

import { Component, Vue, Watch } from \'vue-property-decorator\';

import \'echarts/map/js/china.js\';

@Component({

components: {}

})

export default class GetMap extends Vue {

private chinaEchart: any = null;

public $echarts: any;

private mounted() {

// console.log(this.geoCoordMap);

setTimeout(() => {

this.winGuestMapInit();

}, 0);

}

public winGuestMapInit() {

this.chinaEchart = this.$echarts.init(this.$refs.myChartChina);

this.chinaMap();

}

public geoCoordMap: any = {

北京: [116.395645, 39.929986],

天津: [117.210813, 39.14393],

上海: [121.487899, 31.249162],

重庆: [106.530635, 29.544606],

香港: [114.186124, 22.293586],

澳门: [113.557519, 22.204118],

台湾: [120.961454, 23.80406],

// 湖北省

武汉: [114.3162, 30.581084],

黄石: [115.050683, 30.216127],

十堰: [110.801229, 32.636994],

襄阳: [112.176326, 32.094934],

宜昌: [111.310981, 30.732758],

荆州: [112.241866, 30.332591],

荆门: [112.21733, 31.042611],

鄂州: [114.895594, 30.384439],

孝感: [113.935734, 30.927955],

黄冈: [114.906618, 30.446109],

咸宁: [114.300061, 29.880657],

随州: [113.379358, 31.717858],

恩施: [109.517433, 30.308978],

仙桃: [113.443107, 30.327249],

天门: [113.16802, 30.663312],

潜江: [112.900485, 30.40138],

神农架: [110.487231, 31.595768],

//新疆维吾尔自治区

克拉玛依: [84.88118, 45.594331],

乌鲁木齐: [87.564988, 43.84038],

巴音郭楞: [86.121688, 41.771362],

伊犁: [81.297854, 43.922248],

吐鲁番: [89.181595, 42.96047],

阿勒泰: [88.137915, 47.839744],

哈密: [93.528355, 42.858596],

博尔塔拉: [82.052436, 44.913651],

阿克苏: [80.269846, 41.171731],

克孜勒苏: [76.137564, 39.750346],

昌吉: [87.296038, 44.007058],

喀什: [75.992973, 39.470627],

和田: [79.930239, 37.116774],

塔城: [82.974881, 46.758684],

新疆: [85.564988, 40.84038],

//广西壮族自治区

崇左: [107.357322, 22.415455],

柳州: [109.422402, 24.329053],

百色: [106.631821, 23.901512],

南宁: [108.297234, 22.806493],

梧州: [111.305472, 23.485395],

北海: [109.122628, 21.472718],

桂林: [110.26092, 25.262901],

河池: [108.069948, 24.699521],

贵港: [109.613708, 23.103373],

钦州: [108.638798, 21.97335],

来宾: [109.231817, 23.741166],

防城港: [108.351791, 21.617398],

贺州: [111.552594, 24.411054],

玉林: [110.151676, 22.643974],

// 西藏自治区

山南: [91.750644, 29.229027],

那曲: [92.067018, 31.48068],

阿里: [81.107669, 30.404557],

拉萨: [91.111891, 29.662557],

昌都: [97.185582, 31.140576],

林芝: [94.349985, 29.666941],

日喀则: [88.891486, 29.269023],

//宁夏回族自治区

银川: [106.206479, 38.502621],

吴忠: [106.208254, 37.993561],

中卫: [105.196754, 37.521124],

石嘴山: [106.379337, 39.020223],

固原: [106.285268, 36.021523],

// 内蒙古自治区

乌海: [106.831999, 39.683177],

鄂尔多斯市: [109.993706, 39.81649],

兴安盟: [122.048167, 46.083757],

锡林郭勒盟: [116.02734, 43.939705],

巴彦淖尔: [107.423807, 40.76918],

赤峰: [118.930761, 42.297112],

乌兰察布: [113.112846, 41.022363],

呼伦贝尔: [119.760822, 49.201636],

通辽: [122.260363, 43.633756],

阿拉善盟: [105.695683, 38.843075],

包头: [109.846239, 40.647119],

呼和浩特: [111.660351, 40.828319],

//四川省

遂宁: [105.564888, 30.557491],

雅安: [103.009356, 29.999716],

巴中: [106.757916, 31.869189],

攀枝花: [101.722423, 26.587571],

自贡: [104.776071, 29.359157],

凉山: [102.259591, 27.892393],

广元: [105.819687, 32.44104],

广安: [106.63572, 30.463984],

宜宾: [104.633019, 28.769675],

达州: [107.494973, 31.214199],

南充: [106.105554, 30.800965],

成都: [104.067923, 30.679943],

内江: [105.073056, 29.599462],

资阳: [104.633019, 28.769675],

阿坝: [102.228565, 31.905763],

甘孜: [101.969232, 30.055144],

绵阳: [104.705519, 31.504701],

乐山: [103.760824, 29.600958],

泸州: [105.44397, 28.89593],

德阳: [104.402398, 31.13114],

眉山: [103.84143, 30.061115],

//陕西省

安康: [109.038045, 32.70437],

咸阳: [108.707509, 34.345373],

渭南: [109.483933, 34.502358],

汉中: [107.045478, 33.081569],

延安: [109.50051, 36.60332],

榆林: [109.745926, 38.279439],

西安: [108.953098, 34.2778],

铜川: [108.968067, 34.908368],

宝鸡: [107.170645, 34.364081],

商洛: [109.934208, 33.873907],

// 河南省

焦作: [113.211836, 35.234608],

南阳: [112.542842, 33.01142],

三门峡: [111.181262, 34.78332],

平顶山: [113.300849, 33.745301],

驻马店: [114.049154, 32.983158],

新乡: [113.91269, 35.307258],

许昌: [113.835312, 34.02674],

洛阳: [112.447525, 34.657368],

开封: [114.351642, 34.801854],

安阳: [114.351807, 36.110267],

周口: [114.654102, 33.623741],

信阳: [114.085491, 32.128582],

郑州: [113.649644, 34.75661],

濮阳: [115.026627, 35.753298],

商丘: [115.641886, 34.438589],

漯河: [114.046061, 33.576279],

鹤壁: [114.29777, 35.755426],

//浙江省

丽水: [119.929576, 28.4563],

衢州: [118.875842, 28.95691],

台州: [121.440613, 28.668283],

宁波: [121.579006, 29.885259],

杭州: [120.219375, 30.259244],

金华: [119.652576, 29.102899],

温州: [120.690635, 28.002838],

绍兴: [120.592467, 30.002365],

嘉兴: [120.760428, 30.773992],

湖州: [120.137243, 30.877925],

舟山: [122.169872, 30.03601],

// 海南省

海口: [110.330802, 20.022071],

三亚: [109.522771, 18.257776],

海南: [109.9267865, 19.1399235],

// 山西省

运城: [111.006854, 35.038859],

忻州: [112.727939, 38.461031],

晋城: [112.867333, 35.499834],

临汾: [111.538788, 36.099745],

阳泉: [113.569238, 37.869529],

长治: [113.120292, 36.201664],

吕梁: [111.143157, 37.527316],

太原: [112.550864, 37.890277],

大同: [113.290509, 40.113744],

朔州: [112.479928, 39.337672],

晋中: [112.738514, 37.693362],

// 广东省

韶关: [113.594461, 24.80296],

惠州: [114.410658, 23.11354],

揭阳: [116.379501, 23.547999],

云浮: [112.050946, 22.937976],

深圳: [114.025974, 22.546054],

潮州: [116.630076, 23.661812],

清远: [113.040773, 23.698469],

梅州: [116.126403, 24.304571],

广州: [113.30765, 23.120049],

东莞: [113.763434, 23.043024],

江门: [113.078125, 22.575117],

肇庆: [112.479653, 23.078663],

茂名: [110.931245, 21.668226],

阳江: [111.97701, 21.871517],

汕尾: [115.372924, 22.778731],

河源: [114.713721, 23.757251],

中山: [113.42206, 22.545178],

佛山: [113.134026, 23.035095],

汕头: [116.72865, 23.383908],

湛江: [110.365067, 21.257463],

珠海: [113.562447, 22.256915],

// 云南省

怒江: [98.859932, 25.860677],

迪庆: [99.713682, 27.831029],

昭通: [103.725021, 27.340633],

西双版纳: [100.803038, 22.009433],

玉溪: [102.545068, 24.370447],

临沧: [100.092613, 23.887806],

大理: [100.223675, 25.5969],

丽江: [100.229628, 26.875351],

楚雄: [101.529382, 25.066356],

红河: [103.384065, 23.367718],

文山: [104.089112, 23.401781],

昆明: [102.714601, 25.049153],

曲靖: [103.782539, 25.520758],

保山: [99.177996, 25.120489],

思茅: [100.980058, 22.788778],

德宏: [98.589434, 24.44124],

// 贵州省

贵阳: [106.709177, 26.629907],

黔西南: [104.900558, 25.095148],

铜仁: [109.196161, 27.726271],

黔东南: [107.985353, 26.583992],

遵义: [106.93126, 27.699961],

毕节: [105.300492, 27.302612],

黔南: [107.523205, 26.264536],

六盘水: [104.852087, 26.591866],

安顺: [105.92827, 26.228595],

// 辽宁省

鞍山: [123.007763, 41.118744],

本溪: [123.778062, 41.325838],

营口: [122.233391, 40.668651],

大连: [121.593478, 38.94871],

铁岭: [123.85485, 42.299757],

朝阳: [120.446163, 41.571828],

抚顺: [123.92982, 41.877304],

盘锦: [122.073228, 41.141248],

丹东: [124.338543, 40.129023],

葫芦岛: [120.860758, 40.74303],

锦州: [121.147749, 41.130879],

沈阳: [123.432791, 41.808645],

辽阳: [123.172451, 41.273339],

阜新: [121.660822, 42.01925],

// 河北省

廊坊: [116.703602, 39.518611],

衡水: [115.686229, 37.746929],

秦皇岛: [119.604368, 39.945462],

承德: [117.933822, 40.992521],

沧州: [116.863806, 38.297615],

张家口: [114.893782, 40.811188],

石家庄: [114.522082, 38.048958],

保定: [115.49481, 38.886565],

唐山: [118.183451, 39.650531],

邢台: [114.520487, 37.069531],

邯郸: [114.482694, 36.609308],

// 青海省

// 海南: [100.624066, 36.284364],

海西: [97.342625, 37.373799],

海东: [102.085207, 36.51761],

果洛: [100.223723, 34.480485],

西宁: [101.767921, 36.640739],

海北: [100.879802, 36.960654],

黄南: [102.0076, 35.522852],

玉树: [97.013316, 33.00624],

// 湖南省

邵阳: [111.461525, 27.236811],

张家界: [110.48162, 29.124889],

益阳: [112.366547, 28.588088],

怀化: [109.986959, 27.557483],

湘西: [109.745746, 28.317951],

郴州: [113.037704, 25.782264],

衡阳: [112.583819, 26.898164],

永州: [111.614648, 26.435972],

株洲: [113.131695, 27.827433],

岳阳: [113.146196, 29.378007],

长沙: [112.979353, 28.213478],

湘潭: [112.935556, 27.835095],

常德: [111.653718, 29.012149],

娄底: [111.996396, 27.741073],

// 江苏省

镇江: [119.455835, 32.204409],

常州: [119.981861, 31.771397],

南通: [120.873801, 32.014665],

泰州: [119.919606, 32.476053],

南京: [118.778074, 32.057236],

苏州: [120.619907, 31.317987],

盐城: [120.148872, 33.379862],

宿迁: [118.296893, 33.95205],

无锡: [120.305456, 31.570037],

连云港: [119.173872, 34.601549],

徐州: [117.188107, 34.271553],

淮安: [119.030186, 33.606513],

扬州: [119.427778, 32.408505],

// 山东省

潍坊: [119.142634, 36.716115],

日照: [119.50718, 35.420225],

济宁: [116.600798, 35.402122],

聊城: [115.986869, 36.455829],

德州: [116.328161, 37.460826],

临沂: [118.340768, 35.072409],

枣庄: [117.279305, 34.807883],

莱芜: [117.684667, 36.233654],

烟台: [121.309555, 37.536562],

淄博: [118.059134, 36.804685],

滨州: [117.968292, 37.405314],

泰安: [117.089415, 36.188078],

荷泽: [115.46336, 35.26244],

济南: [117.024967, 36.682785],

威海: [122.093958, 37.528787],

青岛: [120.384428, 36.105215],

东营: [118.583926, 37.487121],

// 安徽省

宣城: [118.752096, 30.951642],

阜阳: [115.820932, 32.901211],

亳州: [115.787928, 33.871211],

蚌埠: [117.35708, 32.929499],

黄山: [118.29357, 29.734435],

六安: [116.505253, 31.755558],

池州: [117.494477, 30.660019],

滁州: [118.32457, 32.317351],

淮南: [117.018639, 32.642812],

铜陵: [117.819429, 30.94093],

合肥: [117.282699, 31.866942],

芜湖: [118.384108, 31.36602],

马鞍山: [118.515882, 31.688528],

安庆: [117.058739, 30.537898],

淮北: [116.791447, 33.960023],

宿州: [116.988692, 33.636772],

巢湖: [117.88049, 31.608733],

//黑龙江省

双鸭山: [131.171402, 46.655102],

绥化: [126.989095, 46.646064],

大兴安岭: [124.196104, 51.991789],

佳木斯: [130.284735, 46.81378],

黑河: [127.50083, 50.25069],

哈尔滨: [126.657717, 45.773225],

大庆: [125.02184, 46.596709],

七台河: [131.019048, 45.775005],

伊春: [128.910766, 47.734685],

牡丹江: [129.608035, 44.588521],

鸡西: [130.941767, 45.32154 | 13],

齐齐哈尔: [123.987289, 47.3477],

鹤岗: [130.292472, 47.338666],

// 福建省

三明: [117.642194, 26.270835],

厦门: [118.103886, 24.489231],

龙岩: [117.017997, 25.078685],

莆田: [119.077731, 25.44845],

南平: [118.181883, 26.643626],

宁德: [119.542082, 26.656527],

泉州: [118.600362, 24.901652],

漳州: [117.676205, 24.517065],

福州: [119.330221, 26.047125],

// 甘肃省

定西: [104.626638, 35.586056],

嘉峪关: [98.281635, 39.802397],

庆阳: [107.644227, 35.726801],

酒泉: [98.508415, 39.741474],

临夏: [103.215249, 35.598514],

金昌: [102.208126, 38.516072],

张掖: [100.459892, 38.93932],

白银: [104.171241, 36.546682],

陇南: [104.934573, 33.39448],

天水: [105.736932, 34.584319],

兰州: [103.823305, 36.064226],

武威: [102.640147, 37.933172],

平凉: [106.688911, 35.55011],

甘南: [102.917442, 34.992211],

// 吉林省

长春: [125.313642, 43.898338],

通化: [125.94265, 41.736397],

吉林: [126.564544, 43.871988],

白山: [126.435798, 41.945859],

松原: [124.832995, 45.136049],

延边: [129.485902, 42.896414],

辽源: [125.133686, 42.923303],

白城: [122.840777, 45.621086],

四平: [124.391382, 43.175525],

// 江西省

抚州: [116.360919, 27.954545],

九江: [115.999848, 29.71964],

宜春: [114.400039, 27.81113],

上饶: [117.955464, 28.457623],

赣州: [114.935909, 25.845296],

南昌: [115.893528, 28.689578],

吉安: [114.992039, 27.113848],

景德镇: [117.186523, 29.303563],

萍乡: [113.859917, 27.639544],

新余: [114.947117, 27.822322],

鹰潭: [117.03545, 28.24131]

};

public data: any = [

{

name: \'北京\',

value: 900

},

{

name: \'天津\',

value: 90

},

{

name: \'合肥\',

value: 100

},

{

name: \'上海\',

value: 990

},

{

name: \'武汉\',

value: 329

}

];

public convertData(data: any) {

let res: any = [];

for (let i = 0; i < data.length; i++) {

// console.log(data[i].name);

this.$nextTick(() => {

let geoCoord = this.geoCoordMap[data[i].name];

// console.log(geoCoord);

if (geoCoord) {

res.push({

name: data[i].name,

value: geoCoord.concat(data[i].value)

});

}

});

}

// console.log(res);

return res;

}

convertedData: any = [

this.convertData(this.data),

this.convertData(

this.data

.sort(function(a: any, b: any) {

return b.value - a.value;

})

.slice(0, 6)

)

];

public chinaMap() {

this.chinaEchart.clear();

let option: any = {

baseOption: {

xAxis: {

show: false

},

yAxis: {

show: false

},

visualMap: {

show: true,

type: \'continuous\',

max: 300,

min: 0,

top: \'center\',

right: \'5%\',

align: \'left\',

calculable: true,

itemWidth: 40,

itemHeight: 304,

inRange: {

color: [\'#00ECFF\', \'#FCCE00\', \'#E63504\'],

},

textStyle: {

color: \'#FFF\',

fontSize: 28

}

},

geo: {

map: \'china\',

itemStyle: {

areaColor: \'#12B5C0\',

borderColor: \'#000\'

},

emphasis: {

itemStyle: {

areaColor: \'green\',

},

label: {

show: true,

fontSize: 28,

color: \'#FFF\'

}

}

},

series: [

{

name: \'热图\',

type: \'heatmap\',

coordinateSystem: \'geo\',

data: this.convertedData[0]

},

{

name: \'散点\',

type: \'scatter\',

coordinateSystem: \'geo\',

data: this.convertedData[0],

symbolSize: function(val: any) {

return 20 + Math.log2(val[2]);

},

label: {

show: true,

normal: {

formatter: \'{b}\',

position: \'right\',

show: true,

textStyle: {

fontSize: 28

}

},

emphasis: {

show: true,

textStyle: {

fontSize: 28,

color: \'#FFF\'

}

}

},

itemStyle: {

normal: {

color: \'#ddb926\'

}

},

tooltip: {

trigger: \'item\',

formatter: function(params: any) {

return params.name + \' : \' + params.value[2];

}

}

}

]

}

// options: []

};

this.chinaEchart.setOption(option);

}

}

</script>

<style lang="scss">

.map {

width: 100%;

height: 100%;

position: relative;

top: 0;

p {

height: 50px;

font-size: 36px;

line-height: 50px;

position: absolute;

top: 30px;

left: 40px;

}

.hr {

position: absolute;

top: 100px;

width: 100%;

height: 2px;

background: #002f3b;

}

.chinaIcon {

width: 100%;

height: 660px;

position: absolute;

// left: 172px;

bottom: 0;

// border: 1px solid #fff;

}

// img{

// width: 100%;

// height: 100%;

// position: absolute;

// display: block;

// top: 0;left: 0;bottom: 0;right: 0;

// margin: auto;

// }

}

</style>

效果如图所示;

下面是我参考的别人的配置:

visualMap=[                                     //视觉映射组件,用于进行『视觉编码』,也就是将数据映射到视觉元素。视觉元素可以是:symbol: 图元的图形类别。symbolSize: 图元的大小。color: 图元的颜色。

// colorAlpha: 图元的颜色的透明度。opacity: 图元以及其附属物(如文字标签)的透明度。colorLightness: 颜色的明暗度。colorSaturation: 颜色的饱和度。colorHue: 颜色的色调。

{

show:true, //是否显示 visualMap-continuous 组件。如果设置为 false,不会显示,但是数据映射的功能还存在

type: \'continuous\', // 定义为连续型 viusalMap

min:10, //指定 visualMapContinuous 组件的允许的最小值

max:100, //指定 visualMapContinuous 组件的允许的最大值

range:[15, 40], //指定手柄对应数值的位置。range 应在 min max 范围内

calculable:true, //是否显示拖拽用的手柄(手柄能拖拽调整选中范围)

realtime:true, //拖拽时,是否实时更新

inverse:false, //是否反转 visualMap 组件

precision:0, //数据展示的小数精度,默认为0,无小数点

itemWidth:20, //图形的宽度,即长条的宽度。

itemHeight:140, //图形的高度,即长条的高度。

align:"auto", //指定组件中手柄和文字的摆放位置.可选值为:\'auto\' 自动决定。\'left\' 手柄和label在右。\'right\' 手柄和label在左。\'top\' 手柄和label在下。\'bottom\' 手柄和label在上。

text:[\'High\', \'Low\'], //两端的文本

textGap:10, //两端文字主体之间的距离,单位为px

dimension:2, //指定用数据的『哪个维度』,映射到视觉元素上。『数据』即 series.data。 可以把 series.data 理解成一个二维数组,其中每个列是一个维度,默认取 data 中最后一个维度

seriesIndex:1, //指定取哪个系列的数据,即哪个系列的 series.data,默认取所有系列

hoverLink:true, //鼠标悬浮到 visualMap 组件上时,鼠标位置对应的数值 在 图表中对应的图形元素,会高亮

inRange:{ //定义 在选中范围中 的视觉元素

color: [\'#121122\', \'rgba(3,4,5,0.4)\', \'red\'],

symbolSize: [30, 100]

},

outOfRange:{ //定义 在选中范围外 的视觉元素。

color: [\'#121122\', \'rgba(3,4,5,0.4)\', \'red\'],

symbolSize: [30, 100]

},

zlevel:0, //所属图形的Canvas分层,zlevel 大的 Canvas 会放在 zlevel 小的 Canvas 的上面

z:2, //所属组件的z分层,z值小的图形会被z值大的图形覆盖

left:"center", //组件离容器左侧的距离,\'left\', \'center\', \'right\',\'20%\'

top:"top", //组件离容器上侧的距离,\'top\', \'middle\', \'bottom\',\'20%\'

right:"auto", //组件离容器右侧的距离,\'20%\'

bottom:"auto", //组件离容器下侧的距离,\'20%\'

orient:"vertical", //图例排列方向

padding:5, //图例内边距,单位px 5 [5, 10] [5,10,5,10]

backgroundColor:"transparent", //标题背景色

borderColor:"#ccc", //边框颜色

borderWidth:0, //边框线宽

textStyle:mytextStyle, //文本样式

formatter: function (value) { //标签的格式化工具。

return \'aaaa\' + value; // 范围标签显示内容。

}

},

{

show:true, //是否显示 visualMap-continuous 组件。如果设置为 false,不会显示,但是数据映射的功能还存在

type: \'piecewise\', // 定义为分段型 visualMap

splitNumber:5, //对于连续型数据,自动平均切分成几段。默认为5段

pieces: [ //自定义『分段式视觉映射组件(visualMapPiecewise)』的每一段的范围,以及每一段的文字,以及每一段的特别的样式

{min: 1500}, // 不指定 max,表示 max 为无限大(Infinity)。

{min: 900, max: 1500},

{min: 310, max: 1000},

{min: 200, max: 300},

{min: 10, max: 200, label: \'10 到 200(自定义label)\'},

{value: 123, label: \'123(自定义特殊颜色)\', color: \'grey\'}, // 表示 value 等于 123 的情况。

{max: 5} // 不指定 min,表示 min 为无限大(-Infinity)。

],

categories:[\'严重污染\', \'重度污染\', \'中度污染\', \'轻度污染\', \'良\', \'优\'], //用于表示离散型数据(或可以称为类别型数据、枚举型数据)的全集

min:10, //指定 visualMapContinuous 组件的允许的最小值

max:100, //指定 visualMapContinuous 组件的允许的最大值

minOpen:true, //界面上会额外多出一个『< min』的选块

maxOpen:true, //界面上会额外多出一个『> max』的选块。

selectedMode:"multiple", //选择模式,可以是:\'multiple\'(多选)。\'single\'(单选)。

inverse:false, //是否反转 visualMap 组件

precision:0, //数据展示的小数精度,默认为0,无小数点

itemWidth:20, //图形的宽度,即长条的宽度。

itemHeight:140, //图形的高度,即长条的高度。

align:"auto", //指定组件中手柄和文字的摆放位置.可选值为:\'auto\' 自动决定。\'left\' 手柄和label在右。\'right\' 手柄和label在左。\'top\' 手柄和label在下。\'bottom\' 手柄和label在上。

text:[\'High\', \'Low\'], //两端的文本

textGap:10, //两端文字主体之间的距离,单位为px

showLabel:true, //是否显示每项的文本标签

itemGap:10, //每两个图元之间的间隔距离,单位为px

itemSymbol:"roundRect", //默认的图形。可选值为: \'circle\', \'rect\', \'roundRect\', \'triangle\', \'diamond\', \'pin\', \'arrow\'

dimension:2, //指定用数据的『哪个维度』,映射到视觉元素上。『数据』即 series.data。 可以把 series.data 理解成一个二维数组,其中每个列是一个维度,默认取 data 中最后一个维度

seriesIndex:1, //指定取哪个系列的数据,即哪个系列的 series.data,默认取所有系列

hoverLink:true, //鼠标悬浮到 visualMap 组件上时,鼠标位置对应的数值 在 图表中对应的图形元素,会高亮

inRange:{ //定义 在选中范围中 的视觉元素

color: [\'#121122\', \'rgba(3,4,5,0.4)\', \'red\'],

symbolSize: [30, 100]

},

outOfRange:{ //定义 在选中范围外 的视觉元素。

color: [\'#121122\', \'rgba(3,4,5,0.4)\', \'red\'],

symbolSize: [30, 100]

},

zlevel:0, //所属图形的Canvas分层,zlevel 大的 Canvas 会放在 zlevel 小的 Canvas 的上面

z:2, //所属组件的z分层,z值小的图形会被z值大的图形覆盖

left:"center", //组件离容器左侧的距离,\'left\', \'center\', \'right\',\'20%\'

top:"top", //组件离容器上侧的距离,\'top\', \'middle\', \'bottom\',\'20%\'

right:"auto", //组件离容器右侧的距离,\'20%\'

bottom:"auto", //组件离容器下侧的距离,\'20%\'

orient:"vertical", //图例排列方向

padding:5, //图例内边距,单位px 5 [5, 10] [5,10,5,10]

backgroundColor:"transparent", //标题背景色

borderColor:"#ccc", //边框颜色

borderWidth:0, //边框线宽

textStyle:mytextStyle, //文本样式

formatter: function (value) { //标签的格式化工具。

return \'aaaa\' + value; // 范围标签显示内容。

}

}

];

具体查看echarts官网:

https://echarts.apache.org/zh/option.html#visualMap

visualMap=[                                     //视觉映射组件,用于进行『视觉编码』,也就是将数据映射到视觉元素。视觉元素可以是:symbol: 图元的图形类别。symbolSize: 图元的大小。color: 图元的颜色。                                                 // colorAlpha: 图元的颜色的透明度。opacity: 图元以及其附属物(如文字标签)的透明度。colorLightness: 颜色的明暗度。colorSaturation: 颜色的饱和度。colorHue: 颜色的色调。    {        show:true,                              //是否显示 visualMap-continuous 组件。如果设置为 false,不会显示,但是数据映射的功能还存在        type: \'continuous\',                     // 定义为连续型 viusalMap        min:10,                                  //指定 visualMapContinuous 组件的允许的最小值        max:100,                                 //指定 visualMapContinuous 组件的允许的最大值        range:[15, 40],                          //指定手柄对应数值的位置。range 应在 min max 范围内        calculable:true,                        //是否显示拖拽用的手柄(手柄能拖拽调整选中范围)        realtime:true,                          //拖拽时,是否实时更新        inverse:false,                          //是否反转 visualMap 组件        precision:0,                            //数据展示的小数精度,默认为0,无小数点        itemWidth:20,                           //图形的宽度,即长条的宽度。        itemHeight:140,                         //图形的高度,即长条的高度。        align:"auto",                           //指定组件中手柄和文字的摆放位置.可选值为:\'auto\' 自动决定。\'left\' 手柄和label在右。\'right\' 手柄和label在左。\'top\' 手柄和label在下。\'bottom\' 手柄和label在上。        text:[\'High\', \'Low\'],                   //两端的文本        textGap:10,                              //两端文字主体之间的距离,单位为px        dimension:2,                            //指定用数据的『哪个维度』,映射到视觉元素上。『数据』即 series.data。 可以把 series.data 理解成一个二维数组,其中每个列是一个维度,默认取 data 中最后一个维度        seriesIndex:1,                          //指定取哪个系列的数据,即哪个系列的 series.data,默认取所有系列        hoverLink:true,                         //鼠标悬浮到 visualMap 组件上时,鼠标位置对应的数值 在 图表中对应的图形元素,会高亮        inRange:{                               //定义 在选中范围中 的视觉元素            color: [\'#121122\', \'rgba(3,4,5,0.4)\', \'red\'],            symbolSize: [30, 100]        },        outOfRange:{  //定义 在选中范围外 的视觉元素。            color: [\'#121122\', \'rgba(3,4,5,0.4)\', \'red\'],            symbolSize: [30, 100]        },        zlevel:0,                                   //所属图形的Canvas分层,zlevel 大的 Canvas 会放在 zlevel 小的 Canvas 的上面        z:2,                                         //所属组件的z分层,z值小的图形会被z值大的图形覆盖        left:"center",                              //组件离容器左侧的距离,\'left\', \'center\', \'right\',\'20%\'        top:"top",                                   //组件离容器上侧的距离,\'top\', \'middle\', \'bottom\',\'20%\'        right:"auto",                               //组件离容器右侧的距离,\'20%\'        bottom:"auto",                              //组件离容器下侧的距离,\'20%\'        orient:"vertical",                         //图例排列方向        padding:5,                                   //图例内边距,单位px  5  [5, 10]  [5,10,5,10]        backgroundColor:"transparent",            //标题背景色        borderColor:"#ccc",                         //边框颜色        borderWidth:0,                               //边框线宽        textStyle:mytextStyle,                      //文本样式        formatter: function (value) {                 //标签的格式化工具。            return \'aaaa\' + value;                    // 范围标签显示内容。        }    },    {        show:true,                          //是否显示 visualMap-continuous 组件。如果设置为 false,不会显示,但是数据映射的功能还存在        type: \'piecewise\',                  // 定义为分段型 visualMap        splitNumber:5,                      //对于连续型数据,自动平均切分成几段。默认为5段        pieces: [                           //自定义『分段式视觉映射组件(visualMapPiecewise)』的每一段的范围,以及每一段的文字,以及每一段的特别的样式            {min: 1500},                     // 不指定 max,表示 max 为无限大(Infinity)。            {min: 900, max: 1500},            {min: 310, max: 1000},            {min: 200, max: 300},            {min: 10, max: 200, label: \'10 到 200(自定义label)\'},            {value: 123, label: \'123(自定义特殊颜色)\', color: \'grey\'}, // 表示 value 等于 123 的情况。            {max: 5}                        // 不指定 min,表示 min 为无限大(-Infinity)。        ],        categories:[\'严重污染\', \'重度污染\', \'中度污染\', \'轻度污染\', \'良\', \'优\'],  //用于表示离散型数据(或可以称为类别型数据、枚举型数据)的全集        min:10,                             //指定 visualMapContinuous 组件的允许的最小值        max:100,                             //指定 visualMapContinuous 组件的允许的最大值        minOpen:true,                       //界面上会额外多出一个『< min』的选块        maxOpen:true,                       //界面上会额外多出一个『> max』的选块。        selectedMode:"multiple",           //选择模式,可以是:\'multiple\'(多选)。\'single\'(单选)。        inverse:false,                      //是否反转 visualMap 组件        precision:0,                        //数据展示的小数精度,默认为0,无小数点        itemWidth:20,                       //图形的宽度,即长条的宽度。        itemHeight:140,                     //图形的高度,即长条的高度。        align:"auto",                       //指定组件中手柄和文字的摆放位置.可选值为:\'auto\' 自动决定。\'left\' 手柄和label在右。\'right\' 手柄和label在左。\'top\' 手柄和label在下。\'bottom\' 手柄和label在上。        text:[\'High\', \'Low\'],               //两端的文本        textGap:10,                          //两端文字主体之间的距离,单位为px        showLabel:true,                     //是否显示每项的文本标签        itemGap:10,                          //每两个图元之间的间隔距离,单位为px        itemSymbol:"roundRect",             //默认的图形。可选值为: \'circle\', \'rect\', \'roundRect\', \'triangle\', \'diamond\', \'pin\', \'arrow\'        dimension:2,                          //指定用数据的『哪个维度』,映射到视觉元素上。『数据』即 series.data。 可以把 series.data 理解成一个二维数组,其中每个列是一个维度,默认取 data 中最后一个维度        seriesIndex:1,                        //指定取哪个系列的数据,即哪个系列的 series.data,默认取所有系列        hoverLink:true,                      //鼠标悬浮到 visualMap 组件上时,鼠标位置对应的数值 在 图表中对应的图形元素,会高亮        inRange:{                             //定义 在选中范围中 的视觉元素            color: [\'#121122\', \'rgba(3,4,5,0.4)\', \'red\'],            symbolSize: [30, 100]        },        outOfRange:{                            //定义 在选中范围外 的视觉元素。            color: [\'#121122\', \'rgba(3,4,5,0.4)\', \'red\'],            symbolSize: [30, 100]        },        zlevel:0,                                   //所属图形的Canvas分层,zlevel 大的 Canvas 会放在 zlevel 小的 Canvas 的上面        z:2,                                         //所属组件的z分层,z值小的图形会被z值大的图形覆盖        left:"center",                              //组件离容器左侧的距离,\'left\', \'center\', \'right\',\'20%\'        top:"top",                                   //组件离容器上侧的距离,\'top\', \'middle\', \'bottom\',\'20%\'        right:"auto",                               //组件离容器右侧的距离,\'20%\'        bottom:"auto",                              //组件离容器下侧的距离,\'20%\'        orient:"vertical",                        //图例排列方向        padding:5,                                   //图例内边距,单位px  5  [5, 10]  [5,10,5,10]        backgroundColor:"transparent",            //标题背景色        borderColor:"#ccc",                         //边框颜色        borderWidth:0,                               //边框线宽        textStyle:mytextStyle,                      //文本样式        formatter: function (value) {                //标签的格式化工具。            return \'aaaa\' + value;                   // 范围标签显示内容。        }    }];

以上是 Echarts和vue画个中国地图 的全部内容, 来源链接: utcz.com/z/375867.html

回到顶部