Vue引用echarts超详细步骤(附图文)

 更新时间:2023年08月16日 10:17:49   作者:weixin_43778617  
这篇文章主要给大家介绍了关于Vue引用echarts超详细步骤,vue中优雅的使用echarts​在前端工作中,数据可视化用得最多的,可能就是图表了,需要的朋友可以参考下

1、在要用的组件页加一个id:main

<!-- echart -->
    <div id="main" style="height: 200px; width: 200px"></div>
    <div>11111</div>

2、在终端执行安装echarts命令: npm install echarts

3、引用echarts(5.0版本需要加 * as ): import * as echarts from "echarts";

4、打开Apache ECharts官网:https://echarts.apache.org/examples/zh/index.html

选择自己需要的图,这里是一个雷达图,我自己调整好样式后的代码:

option = {
  radar: {
    // shape: 'circle',
    radius:"66%",
    center:["50%","42%"],
    splitNumber:8,
    splitArea:{
      areaStyle:{
        color:"rgba(127,95,132,.3)",
        opacity:1,
        shadowBlur:45,
        shadowColor: 'rgba(0, 0, 0, 0.5)',
        shadowOffsetX:0,
        shadowOffsetY :15,
      }
    },
    indicator: [
      { name: '销售', max: 6500 },
      { name: '政府', max: 16000 },
      { name: '信息技术', max: 30000 },
      { name: '客户支持', max: 38000 },
      { name: '发展', max: 52000 },
      { name: '市场', max: 25000 }
    ]
  },
    legend: {
      left:"center",
      bottom:"10",
    data: ['分配预算', '预计支出','实际支出']
  },
  series: [
    {
      type: 'radar',
      symbolSize:0,
      areaStyle:{
        normal:{
             shadowBlur:13,
             shadowColor:"rgba(0,0,0,.2)",
             shadowOffsetX:0,
             shadowOffsetY:10,
             opacity:1,
        }
      },
      data: [
         {
                value: [5000, 7000, 12000, 11000, 15000, 14000],
                name: "分配预算",
              },
              {
                value: [4000, 9000, 15000, 15000, 13000, 11000],
                name: "预计支出",
              },
              {
                value: [5500, 11000, 12000, 15000, 12000, 12000],
                name: "实际支出",
              },
      ]
    }
  ]
};

script完整代码如下:
可以自己调整样式,在api文档有对照解释,链接如下,可供学习与参考:https://echarts.apache.org/zh/api.html#echarts

<script>
// echarts
import * as echarts from "echarts";
export default {
  data() {
    return {
      chartDom: "",
      myChart: "",
      option: "",
    };
  },
  mounted() {
    this.$nextTick(() => {
      this.chartDom = document.getElementById("main");
      this.myChart = echarts.init(this.chartDom);
      this.initChart();
    });
  },
  methods: {
    initChart() {
      console.log(document.getElementById("main"), "----d");
      // return;
      // this.chart = echarts.init(this.$el, "macarons");
      this.option = {
        radar: {
          // shape: 'circle',
          radius: "66%",
          center: ["50%", "42%"],
          splitNumber: 8,
          splitArea: {
            areaStyle: {
              color: "rgba(127,95,132,.3)",
              opacity: 1,
              shadowBlur: 45,
              shadowColor: "rgba(0, 0, 0, 0.5)",
              shadowOffsetX: 0,
              shadowOffsetY: 15,
            },
          },
          indicator: [
            { name: "销售", max: 6500 },
            { name: "政府", max: 16000 },
            { name: "信息技术", max: 30000 },
            { name: "客户支持", max: 38000 },
            { name: "发展", max: 52000 },
            { name: "市场", max: 25000 },
          ],
        },
        legend: {
          left: "center",
          bottom: "10",
          data: ["分配预算", "预计支出", "实际支出"],
        },
        series: [
          {
            type: "radar",
            symbolSize: 0,
            areaStyle: {
              normal: {
                shadowBlur: 13,
                shadowColor: "rgba(0,0,0,.2)",
                shadowOffsetX: 0,
                shadowOffsetY: 10,
                opacity: 1,
              },
            },
            data: [
              {
                value: [5000, 7000, 12000, 11000, 15000, 14000],
                name: "分配预算",
              },
              {
                value: [4000, 9000, 15000, 15000, 13000, 11000],
                name: "预计支出",
              },
              {
                value: [5500, 11000, 12000, 15000, 12000, 12000],
                name: "实际支出",
              },
            ],
          },
        ],
      };
      this.option && this.myChart.setOption(this.option);
    },
    //
  },
};
</script>

效果如下:

总结 

到此这篇关于Vue引用echarts超详细步骤的文章就介绍到这了,更多相关Vue引用echarts内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一文带你深入理解Vue3中Composition API的使用

    一文带你深入理解Vue3中Composition API的使用

    Composition API 是 Vue 3 中的一项强大功能,它改进了代码组织和重用,使得构建组件更加灵活和可维护,本文我们将深入探讨 Composition API 的各个方面,希望对大家有所帮助
    2023-10-10
  • vue elementui动态添加el-input实例代码

    vue elementui动态添加el-input实例代码

    最近遇到一个新的需求,需要动态添加el-input,这篇文章主要给大家介绍了关于vue elementui动态添加el-input的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • vue中动态select的使用方法示例

    vue中动态select的使用方法示例

    这篇文章主要介绍了vue中动态select的使用方法,结合实例形式分析了vue.js使用动态select创建下拉菜单相关实现技巧与操作注意事项,需要的朋友可以参考下
    2019-10-10
  • vue.js中npm安装教程图解

    vue.js中npm安装教程图解

    这篇文章主要介绍了vue.js中npm安装教程图解,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-04-04
  • Vue Router修改query参数url参数没有变化问题及解决

    Vue Router修改query参数url参数没有变化问题及解决

    这篇文章主要介绍了Vue Router修改query参数url参数没有变化问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • vue使用axios的小技巧分享

    vue使用axios的小技巧分享

    这篇文章主要为大家详细介绍了一些vue使用axios的小技巧,文中的示例代码讲解详细,对我们深入掌握vue有一定的帮助,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-10-10
  • 详解vue指令与$nextTick 操作DOM的不同之处

    详解vue指令与$nextTick 操作DOM的不同之处

    这篇文章主要介绍了vue指令与$nextTick 操作DOM的不同之处,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-08-08
  • Vue2老项目配置ESLint和Prettier完整步骤

    Vue2老项目配置ESLint和Prettier完整步骤

    ESLint是一个静态代码分析工具,用于检查JavaScript代码的语法结构和查找程序错误,Prettier是一个代码格式化工具,这篇文章主要给大家介绍了关于Vue2老项目配置ESLint和Prettier的完整步骤,需要的朋友可以参考下
    2024-08-08
  • Vue使用driver.js做引导页

    Vue使用driver.js做引导页

    Driver.js是一个功能强大且高度可定制的基于原生JavaScript开发的新用户引导库,本文主要介绍了Vue使用driver.js做引导页,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • vue.js加载新的内容(实例代码)

    vue.js加载新的内容(实例代码)

    vue是一种轻巧便捷的框架,那么如何进行对于数据加载的刷新呢?以下就是我对于vue.js数据加载的一点想法
    2017-06-06

最新评论