成果
<template>
<div id="login-box"></div>
</template>
<script>
import {chartData} from './data'
export default {data() {
return {option: {}
}
},
mounted() {this.$nextTick(() => {this.initCharts()
})
},
methods: {initCharts() {
this.option = {
backgroundColor: 'transparent',
xAxis: {
show: false,
type: 'value'
},
yAxis: {
show: false,
type: 'value'
},
tooltip: {show: false},
series: [
{
type: 'graph',
zlevel: 5,
draggable: false,
coordinateSystem: 'cartesian2d', // 应用二维的直角坐标系(也称笛卡尔坐标系)label: {
normal: {show: false}
},
data: chartData,
links: [
{
source: '数据中心',
target: '分数据中心一'
},
{
source: '数据中心',
target: '分数据中心二'
},
{
source: '数据中心',
target: '分数据中心三'
}
],
lineStyle: {
normal: {
opacity: 1,
color: '#53B5EA',
curveness: 0.5,
width: 2
}
}
},
{
type: 'lines',
coordinateSystem: 'cartesian2d',
z: 1,
zlevel: 2,
animation: false,
effect: {
show: true,
period: 8,
trailLength: 0.01,
symbolSize: 24,
symbol: 'pin',
loop: true,
color: 'pink'
},
lineStyle: {
normal: {
color: '#22AC38',
width: 0,
curveness: 0.5 // 值越大,曲度越大
}
},
data: [
{
coords: [[170, 200],
[400, 200]
]
},
{
coords: [[170, 200],
[10, 380]
]
},
{
coords: [[170, 200],
[10, 10]
]
}
]
}
]
}
const myChart = this.$echarts.init(document.getElementById('login-box'))
myChart.setOption(this.option)
}
}
}
</script>