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

相关推荐
crary,记忆1 小时前
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
前端·webpack·angular·angular.js
漂流瓶jz1 小时前
让数据"流动"起来!Node.js实现流式渲染/流式传输与背后的HTTP原理
前端·javascript·node.js
SamHou02 小时前
手把手 CSS 盒子模型——从零开始的奶奶级 Web 开发教程2
前端·css·web
我不吃饼干2 小时前
从 Vue3 源码中了解你所不知道的 never
前端·typescript
开航母的李大2 小时前
【中间件】Web服务、消息队列、缓存与微服务治理:Nginx、Kafka、Redis、Nacos 详解
前端·redis·nginx·缓存·微服务·kafka
Bruk.Liu2 小时前
《Minio 分片上传实现(基于Spring Boot)》
前端·spring boot·minio
鱼樱前端3 小时前
Vue3+d3-cloud+d3-scale+d3-scale-chromatic实现词云组件
前端·javascript·vue.js
coding随想3 小时前
JavaScript中的原始值包装类型:让基本类型也能“变身”对象
开发语言·javascript·ecmascript
zhangxingchao3 小时前
Flutter入门:Flutter开发必备Dart基础
前端
佚名猫3 小时前
vue3+vite+pnpm项目 使用monaco-editor常见问题
前端·vue3·vite·monacoeditor