vue中eCharts的基本使用

//vue的原型上挂载echarts
//在main.js文件中
import * as echarts from 'echarts';
Vue.prototype.$echarts = echarts;
//在组件template中
<div class="content">
  <div class="w100 h100" ref="echarts1"></div>
</div>
export default{
    data(){
   return{
    echarts1: null
   }
  }
computed:{
  option1() {
      return {
        color: ['#1CD1BD', '#3795FF'],
        tooltip: {
          trigger: 'item',
        },
        legend: {
          icon: 'rect',
          itemWidth: 14,
          orient: 'vertical',
          right: '22%',
          top: '40%',
          formatter: (name) => {
            const data = this.option1.series[0].data;
            let tarValue = 0;
            let total = 0;
            for (const item of data) {
              total += item.value;
              if (item.name === name) tarValue = item.value;
            }
            let p = 0;
            if (total) {
              const val = (tarValue / total) * 100;
              p = this.$fixed(val);
            }
            return `${name} ${p}%`;
          },
          textStyle: {
            color: this.fontColor,
          },
        },
        series: [
          {
            name: '统计',
            type: 'pie',
            radius: '50%',
            center: ['50%', '45%'],
            label: {
              show: false,
            },
            data: [
              { value: 15, name: '已检' },
              { value: 10, name: '漏检' },
            ],
          },
        ],
      };
    },
},
   mounted() {
     //this.$echarts.init是vue原型中$echarts提供的方法,接收三个参数:dom,theme,opts
     //this.$refs.echarts1是参数1容器
      this.echarts1 = this.$echarts.init(this.$refs.echarts1);
     //设置配置项
      this.echarts1.setOption(this.option1);
     //自适应
      window.addEventListener('resize', () => {
        this.resize();
      });
    }
  methods:{
    //自适应
    resize() {
        if (this.echarts1) this.echarts1.resize()
      },
  }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值