115 lines
3.5 KiB
Vue
115 lines
3.5 KiB
Vue
<template>
|
||
<div class="container">
|
||
<div id="main1" class="chart-container"></div>
|
||
</div>
|
||
</template>
|
||
|
||
<script>
|
||
import * as echarts from "echarts";
|
||
export default {
|
||
name: "UniqueRender",
|
||
methods: {
|
||
initChart() {
|
||
let airData = [
|
||
{ name: "北京市", value: 39.92 },
|
||
{ name: "天津市", value: 39.13 },
|
||
{ name: "上海市", value: 31.22 },
|
||
{ name: "重庆市", value: 66 },
|
||
{ name: "河北省", value: 147 },
|
||
{ name: "河南省", value: 113 },
|
||
{ name: "云南省", value: 25.04 },
|
||
{ name: "辽宁省", value: 50 },
|
||
{ name: "黑龙江省", value: 114 },
|
||
{ name: "湖南省", value: 175 },
|
||
{ name: "安徽省", value: 117 },
|
||
{ name: "山东省", value: 92 },
|
||
{ name: "新疆维吾尔自治区", value: 84 },
|
||
{ name: "江苏省", value: 67 },
|
||
{ name: "浙江省", value: 84 },
|
||
{ name: "江西省", value: 96 },
|
||
{ name: "湖北省", value: 273 },
|
||
{ name: "广西壮族自治区", value: 59 },
|
||
{ name: "甘肃省", value: 99 },
|
||
{ name: "山西省", value: 39 },
|
||
{ name: "内蒙古自治区", value: 58 },
|
||
{ name: "陕西省", value: 61 },
|
||
{ name: "吉林省", value: 51 },
|
||
{ name: "福建省", value: 29 },
|
||
{ name: "贵州省", value: 71 },
|
||
{ name: "广东省", value: 38 },
|
||
{ name: "青海省", value: 57 },
|
||
{ name: "西藏自治区", value: 24 },
|
||
{ name: "四川省", value: 58 },
|
||
{ name: "宁夏回族自治区", value: 52 },
|
||
{ name: "海南省", value: 54 },
|
||
{ name: "台湾省", value: 88 },
|
||
{ name: "香港特别行政区", value: 66 },
|
||
{ name: "澳门特别行政区", value: 77 },
|
||
{ name: "南海诸岛", value: 55 },
|
||
];
|
||
fetch("/data/china.json")
|
||
.then(function (response) {
|
||
return response.json();
|
||
})
|
||
.then(function (result) {
|
||
console.log(result);
|
||
// 基于准备好的dom,初始化echarts实例
|
||
var myChart = echarts.init(document.getElementById("main1"));
|
||
|
||
//在echarts中注册地图矢量数据
|
||
echarts.registerMap("china", result);
|
||
// 指定图表的配置项和数据
|
||
var option = {
|
||
//配置地理坐标系组件
|
||
geo: {
|
||
type: "map",
|
||
map: "china",
|
||
roam: true, //设置允许缩放以及拖动的效果
|
||
label: {
|
||
show: false,
|
||
fontSize: 10,
|
||
},
|
||
// zoom: 4, //初始化缩放比例
|
||
center: [108.948024, 34.263161], //设置初始化中心点
|
||
},
|
||
series: [
|
||
{
|
||
data: airData,
|
||
geoIndex: 0, // 将空气质量的数据和第0个geo配置关联在一起
|
||
type: "map",
|
||
},
|
||
],
|
||
visualMap: {
|
||
min: 0,
|
||
max: 300,
|
||
inRange: {
|
||
symbolSize: [30, 100],
|
||
color: ["white", "red"], // 控制颜色渐变的范围
|
||
},
|
||
calculable: true, // 出现滑块
|
||
},
|
||
};
|
||
|
||
// 使用刚指定的配置项和数据显示图表。
|
||
myChart.setOption(option);
|
||
});
|
||
},
|
||
},
|
||
mounted() {
|
||
this.initChart();
|
||
},
|
||
};
|
||
</script>
|
||
|
||
<style lang="stylus" scoped>
|
||
.container{
|
||
display flex
|
||
justify-content center
|
||
align-content center
|
||
}
|
||
.chart-container {
|
||
width: 350px;
|
||
height: 300px;
|
||
}
|
||
</style>>
|