• vue+echarts ① echarts在vue中的使用


    一、安装echarts依赖

    npm install echarts --save

    二、在main.js中全局引入echarts

    1. import * as echarts from 'echarts'
    2. Vue.prototype.$echarts = echarts

    三、在页面中引入echarts

    ① 用div装echarts图表,把他放到你想放的位置。

        
    "echart" style="width: 100%;height:300px">

    通过id来标识这个组件,这里的样式宽度和高度最好给一个,不然可能会加载不出来。

    ② 在methods中定义方法drawCharts,画出这个图表。

    1. methods: {
    2. drawChart() {
    3. // 这里的echart同div里的id名相同即可
    4. const myChart = this.$echarts.init(document.getElementById("echart"));
    5. // option为一个设置图表格式的数组
    6. myChart.setOption(this.option);
    7. },
    8. },

    ③ 记得这个方法的渲染不能放在create()里面,得放在mounted()里面

    1. mounted() {
    2. this.drawChart();
    3. },

    其中option就是对于这个图表的设置,官网中给出的例子option就是这个东西

    Examples - Apache ECharts

     ④ 给一个简单的option

    只需要照着官网的示例选取自己需要的option即可。

    1. option: {
    2. title: {
    3. text: "测试用例",
    4. left: "center",
    5. },
    6. tooltip: {
    7. trigger: "item",
    8. },
    9. legend: {
    10. orient: "vertical",
    11. left: "left",
    12. },
    13. series: [
    14. {
    15. name: "数量",
    16. type: "pie",
    17. radius: "50%",
    18. data: [
    19. { value: 1048, name: "测试用例1" },
    20. { value: 735, name: "测试用例2" },
    21. { value: 580, name: "测试用例3" },
    22. ],
    23. emphasis: {
    24. itemStyle: {
    25. shadowBlur: 10,
    26. shadowOffsetX: 0,
    27. shadowColor: "rgba(0, 0, 0, 0.5)",
    28. },
    29. },
    30. },
    31. ],
    32. },

    四、页面效果和完整代码

    ① 示例效果

     ② 示例完整代码

    1. <script>
    2. export default {
    3. components: {},
    4. data() {
    5. return {
    6. option: {
    7. title: {
    8. text: "测试用例",
    9. left: "center",
    10. },
    11. tooltip: {
    12. trigger: "item",
    13. },
    14. legend: {
    15. orient: "vertical",
    16. left: "left",
    17. },
    18. series: [
    19. {
    20. name: "数量",
    21. type: "pie",
    22. radius: "50%",
    23. data: [
    24. { value: 1048, name: "测试用例1" },
    25. { value: 735, name: "测试用例2" },
    26. { value: 580, name: "测试用例3" },
    27. ],
    28. emphasis: {
    29. itemStyle: {
    30. shadowBlur: 10,
    31. shadowOffsetX: 0,
    32. shadowColor: "rgba(0, 0, 0, 0.5)",
    33. },
    34. },
    35. },
    36. ],
    37. },
    38. };
    39. },
    40. created() {
    41. },
    42. methods: {
    43. drawChart() {
    44. const myChart = this.$echarts.init(document.getElementById("echart"));
    45. myChart.setOption(this.option);
    46. },
    47. },
    48. mounted() {
    49. this.drawChart();
    50. },
    51. };
    52. script>
    53. <style scoped lang="less">
    54. style>

    五、可能的出错和解决方式

    ① Error: Initialize failed: invalid dom.

     将this.drawChart();放到了create里面,没放到mounted里

    ②  Error in mounted hook: "ReferenceError: echarts is not defined"

    没有正确引用echarts,特别是看看引用的那段是否出错,以及main.js中是否全局引用。

    const myChart = this.$echarts.init(document.getElementById("echart"));

     

  • 相关阅读:
    Vue+ElementUI项目打包部署到Ubuntu服务器中
    Spring MVC 架构详解
    Mac 系统安装Chromedriver
    GEE开发之Modis_LAI数据分析和获取
    S7-200SMART案例分析——运动控制编程三轴控制(二)
    JavaWeb(二)
    接口自动化测试如何实现?5个步骤轻松拿捏!
    关于运放的二三事
    JD公司物流配送模式的优化研究
    WMI Provider Host占用CPU过高
  • 原文地址:https://blog.csdn.net/zujiasheng/article/details/126510924