echarts实现飞机飞往各地

<script>
import * as echarts from 'echarts';
import datajson from '../../assets/world.json'
echarts.registerMap('world',datajson)



export default {
  name: 'ecahrts',
  data () {
    return {


      opt:{
        backgroundColor:'transparent',
        geo:{
          map:"world",
          roam:true,
          zoom:1.3,
          label:{
            emphasis:{
              show:false
            }
          },
          itemStyle:{ //地图正常和鼠标
            normal:{
              areaColor:"#16213e",
              borderColor:"#5b66a1",
            },
            emphasis:{
              areaColor:"#2a333d"
            }
          },
          regions:[
            {
              name:'China', //中国地图样式
              itemStyle:{
                normal:{
                  opacity:0.4,
                  borderColor:"#ffd591",
                  borderWidth:3,
                  areaColor:"#485377",

                }
              }
            }
          ]
        }
      }
    }
  },
  mounted () {
    var series = [
      {
        name:'track',
        type:'effectScatter',
        coordinateSystem:'geo',
        zlevel:2,
        rippleEffect:{
          brushType:'stroke'
        },
        label:{
          normal:{
            show:true,
            position:'right',
            formatter:'{b}'
          }
        },
        symbolSize:15,
        itemStyle:{
          normal:{
            color:"#a6c84c"
          }
        },
        data:trackData.map(function(dataItem){
          return {
            name:dataItem[1].name,
            value:geoData[dataItem[1].name].concat(dataItem[1].icon)
          }
        }),
        symbol:function(val){
          return "image://./static/images/"+val[2]
        }

      },{
        name:'track',
        type:'lines',
        zlevel:2,
        effect:{
          show:true,
          period:6,
          trailLength:0,
          symbol:'image://./static/images/飞机(1).png',
          symbolSize:15
        },
        lineStyle:{
          color:'#a6c84c',
          width:1,
          opacity:0.5,
          curveness:0.3
        },
        data:this.CoverData(trackData)
      }
    ]
    this.opt.series = series
    var chart = echarts.init(document.getElementById("ecahts"))
    chart.setOption(this.opt)
	 
	},
	methods:{
    CoverData(data){
      var arr= [ ]
      data.forEach(item=>{
        var fromData = geoData[item[0].name]
        var toData = geoData[item[1].name]
        if(fromData&&toData){
          arr.push({
            coords:[fromData,toData]
          })
        }
      })
      return arr;
    }
},
watch:{
    
}
}
</script>

</style>

Cockos Incorporated | LICEcap

相关推荐
Slow菜鸟20 分钟前
ES5 vs ES6:JavaScript 演进之路
前端·javascript·es6
小冯的编程学习之路22 分钟前
【前端基础】:HTML
前端·css·前端框架·html·postman
Jiaberrr2 小时前
Vue 3 中搭建菜单权限配置界面的详细指南
前端·javascript·vue.js·elementui
科科是我嗷~2 小时前
【uniapp】textarea maxlength字数计算不准确的问题
javascript·uni-app·html
懒大王95272 小时前
uniapp+Vue3 组件之间的传值方法
前端·javascript·uni-app
烛阴3 小时前
秒懂 JSON:JavaScript JSON 方法详解,让你轻松驾驭数据交互!
前端·javascript
拉不动的猪3 小时前
刷刷题31(vue实际项目问题)
前端·javascript·面试
zeijiershuai3 小时前
Ajax-入门、axios请求方式、async、await、Vue生命周期
前端·javascript·ajax
恋猫de小郭3 小时前
Flutter 小技巧之通过 MediaQuery 优化 App 性能
android·前端·flutter
只会写Bug的程序员3 小时前
面试之《webpack从输入到输出经历了什么》
前端·面试·webpack