vue使用axios给echarts渲染数据不展示的解决方法;

2023-05-16

因为自己遇到了所以分享下解决办法,也记一下笔记;

第一步:

1.这里首先引入Echarts组件

<template>
  <div>
    <Echart
      :options="options"
      id="centreRight2Chart1"
      height="220px"
      width="360px"
    ></Echart>
  </div>
</template>

第二步:

1.这里定义两个对象 options 和 param;

2.options:Echarts配置所需的属性

3.param:用来监听的参数

export default {
  data () {
    return {
      options: {},
      param : {}
    };
  }}

第三步:axios请求

1.就是通过axios请求给param赋值

 httpAction('/yb/bigscreen/top5','','post').then((res)=>{
        let records = res.result;
        if(res.code == 200 && records.length > 0){
          let tmpParam = {};
          records.forEach((e,i) => {
            if(i == 0){
              tmpParam.arr1 = [parseFloat(e.cjfy),parseFloat(e.cjwgje),parseFloat(e.cjzyr),parseFloat(e.wgfyzb),parseFloat(e.wgrczb)]
              //this.param.arr1 = [1000,2000,3000,400,5000];
            } else {
              let arr2 = [parseFloat(e.cjfy),parseFloat(e.cjwgje),parseFloat(e.cjzyr),parseFloat(e.wgfyzb),parseFloat(e.wgrczb)];
              tmpParam.max = Math.max(...tmpParam.arr1,...arr2);
              tmpParam.arr2 = arr2;
            }
          })
          this.param = tmpParam;
          console.log(tmpParam)
        }

      });

第四步:watch函数举例 

1.这里是通过对param进行监听,将newData(param通过axios更新后的值)里面的值拿出来赋值给echarts图表所需的配置数据;

2.Echarts图表需要渲染的配置数据(this.options)写在watch监听里面;

watch: {
    param: {
        //newData:param更新的值,oldDate:param之前的值
      handler (newData, oldData) {
        var legendData = ["xxx", "xxx"]; //图例
        var indicator = [
          {
            text: "次均xxxx",
            max: newData.max,
          },
          {
            text: "次均xxxx",
            max: newData.max,
          },
          {
            text: "次均xxxx",
            max: newData.max,
          },
          {
            text: "违规xxxx",
            max: newData.max,
            //  axisLabel: {show: true, textStyle: {fontSize: 18, color: '#333'}}
          },
          {
            text: "违规xxxx",
            max: newData.max,
          },
        ];
        var dataArr = [
          {
            value: newData.arr1,
            name: legendData[0],
            itemStyle: {
              normal: {
                lineStyle: {
                  color: "#4A99FF",
                  // shadowColor: '#4A99FF',
                  // shadowBlur: 10,
                },
                shadowColor: "#4A99FF",
                shadowBlur: 10,
              },
            },
            areaStyle: {
              normal: {
                // 单项区域填充样式
                color: {
                  type: "linear",
                  x: 0, //右
                  y: 0, //下
                  x2: 1, //左
                  y2: 1, //上
                  colorStops: [
                    {
                      offset: 0,
                      color: "#4A99FF",
                    },
                    {
                      offset: 0.5,
                      color: "rgba(0,0,0,0)",
                    },
                    {
                      offset: 1,
                      color: "#4A99FF",
                    },
                  ],
                  globalCoord: false,
                },
                opacity: 1, // 区域透明度
              },
            },
          },
          {
            value: newData.arr2,
            name: legendData[1],
            itemStyle: {
              normal: {
                lineStyle: {
                  color: "#4BFFFC",
                  // shadowColor: '#4BFFFC',
                  // shadowBlur: 10,
                },
                shadowColor: "#4BFFFC",
                shadowBlur: 10,
              },
            },
            areaStyle: {
              normal: {
                // 单项区域填充样式
                color: {
                  type: "linear",
                  x: 0, //右
                  y: 0, //下
                  x2: 1, //左
                  y2: 1, //上
                  colorStops: [
                    {
                      offset: 0,
                      color: "#4BFFFC",
                    },
                    {
                      offset: 0.5,
                      color: "rgba(0,0,0,0)",
                    },
                    {
                      offset: 1,
                      color: "#4BFFFC",
                    },
                  ],
                  globalCoord: false,
                },
                opacity: 1, // 区域透明度
              },
            },
          },
        ];
        var colorArr = ["#4A99FF", "#4BFFFC"]; //颜色
        this.options = {
          color: colorArr,
          legend: {
            orient: "vertical",
            icon: "circle", //图例形状
            data: legendData,
            bottom: 0,
            right: 20,
            itemWidth: 14, // 图例标记的图形宽度。[ default: 25 ]
            itemHeight: 14, // 图例标记的图形高度。[ default: 14 ]
            itemGap: 21, // 图例每项之间的间隔。[ default: 10 ]横向布局时为水平间隔,纵向布局时为纵向间隔。
            textStyle: {
              fontSize: 10,
              color: "#00E4FF",
            },
          },
          radar: {
            // shape: 'circle',
            name: {
              textStyle: {
                color: "#fff",
                fontSize: 11,
              },
            },
            indicator: indicator,
            splitArea: {
              // 坐标轴在 grid 区域中的分隔区域,默认不显示。
              show: true,
              areaStyle: {
                // 分隔区域的样式设置。
                color: ["rgba(255,255,255,0)", "rgba(255,255,255,0)"], // 分隔区域颜色。分隔区域会按数组中颜色的顺序依次循环设置颜色。默认是一个深浅的间隔色。
              },
            },
            axisLine: {
              //指向外圈文本的分隔线样式
              lineStyle: {
                color: "#153269",
              },
            },
            splitLine: {
              lineStyle: {
                color: "#113865", // 分隔线颜色
                width: 1, // 分隔线线宽
              },
            },
          },
          series: [
            {
              type: "radar",
              symbolSize: 8,
              // symbol: 'angle',
              data: dataArr,
            },
          ],
        };



      },
      immediate: true,
      deep: true
    }
  }

第五步:OVER 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue使用axios给echarts渲染数据不展示的解决方法; 的相关文章

随机推荐

  • fedora 的kde桌面无法输入中文问题

    简单三步 xff1a xff08 1 xff09 xff1a sudo yum y install ibus 安装ibus拼音库 xff08 2 xff09 xff1a sudo yum y install im chooser 安装拼音切
  • go切片常见错误

    x1f447 下面代码会输出什么 xff1f slices span class token operator 61 span span class token function make span span class token pun
  • OpenVINO的部署和使用

    现在几乎每家硬件或互联网公司都推出了自家的机器学习框架 xff0c 小米的mace 谷歌的TensorFlow Facebook的Torch等等 今天要介绍的是Inter公司出品的OpenVINO OpenVINO主要分为Model Opt
  • Mybatis-Plus分页插件

    引言 xff1a MyBatis Plus自带分页插件 xff0c 只要简单的配置即可实现分页功能 1 添加Configuration配置类 64 Configuration 64 MapperScan 34 com atguigu myb
  • 关于manjaro命令行界面方块乱码

    通常情况下这些方块乱码是中文 xff0c 其实这篇文档讲的很清楚 xff0c 如果 etc locale conf中有设置LANG 61 zh CN UTF 8就会导致tty乱码 解决办法也如文档所说有两个 xff1a 首先是修改 etc
  • 如何安装arm交叉工具链及问题解决

    在进行基于arm的嵌入式linux开发时 xff0c 首先要安装交叉工具链 要按照交叉工具链首先要获得交叉工具链的压缩包 xff0c 我这里用的是开发板上自带的压缩包 xff1a arm linux gcc 4 5 1 v6 vfp tgz
  • 04)go语言使用优化 启动时不打开CMD控制台,后台运行

    一 生成没有cmd窗口的exe程序 1 目前go语言生成exe我是在goland运行时设置了输出路径 xff0c 运行时就会产生exe可执行文件 2 默认是执行的go bulid指令 xff0c 生成的ext双击打开是有CMD窗口的 xff
  • C#使用RDP远程桌面

    由于本人是做数据库维护经常使用到远程桌面 xff0c 但是windows自带的远程桌面难以区分很不方便 xff0c 所以我自己写了一个RDP RDP一共修改了两次 第一种思路就是使用windows自带的RDP xff0c 保存成RDP文件
  • 【Altium秘籍】room 复制报错的解决办法

    在使用多通道绘图时 nbsp 有时会出现 nbsp 后加的通道 无法拷贝room格式 nbsp 仔细看会发现 是由于新建的 room 不属于原来的 类中 这个原因 个人觉得是 软件的bug nbsp 更新数据时遗漏导致 数据不同步 目前 n
  • 将多边形点按照逆时针排序

    Point center bool PointCmp const Point amp a const Point amp b if a x gt 61 0 amp amp b x lt 0 return true if a x 61 61
  • 排队论入门学习 (for 数学建模)

    排队论入门学习 xff08 for 数学建模 xff09 文字部分引用了很多浙大数学建模排队论ppt中的内容 xff0c 本人做个总结和代码实现 为什么研究排队论 xff1f 研究排队问题 xff0c 就是要把排队的时间控制到一定的程度内
  • 层次分析法(AHP)

    层次分析法 xff08 AHP xff09 问题的提出 日常生活中有许多决策问题 决策是指在面临多种方案时需要依据一定的标准选择某一种方案 购物 xff1a 买钢笔 xff0c 一般要依据质量 颜色 实用性 价格等方面的因素来选择某一只钢笔
  • 遗传算法解决TSP问题(c++实现)

    遗传算法 遗传算法简介 遗传算法 Genetic Algorithms xff0c 简称 GA 是一种基于自然选择原理和自然遗传机制的搜索 寻优 算法 xff0c 它是模拟自然界中的生命进化机制 xff0c 在人工系统中实现特定目标的优化
  • 灰色预测模型GM(1,1) 与例题分析

    灰色预测模型 灰色预测的概念 xff08 1 xff09 灰色系统 白色系统和黑色系统 白色系统是指一个系统的内部特征是完全已知的 xff0c 既系统信息是完全充分的 黑色系统是一个系统的内部信息对外界来说是一无所知的 xff0c 只能通过
  • 共轭梯度法的推导与完整算法

    共轭梯度法 学习自知乎 xff1a https www zhihu com question 27157047 and wikipedia and 非线性规划课 简介 在数值线性代数中 xff0c 共轭梯度法是一种求解对称正定线性方程组Ax
  • 随机森林算法学习(RandomForest)

    随机森林算法学习 最近在做kaggle的时候 xff0c 发现随机森林这个算法在分类问题上效果十分的好 xff0c 大多数情况下效果远要比svm xff0c log回归 xff0c knn等算法效果好 因此想琢磨琢磨这个算法的原理 要学随机
  • 锁存器芯片74HC573芯片的用法,及其在实际电路中的应用

    一 74HC573介绍 锁存器是一种对脉冲电平敏感的存储单元电路 xff0c 它们可以在特定输入脉冲电平作用下改变状态 锁存 xff0c 就是把信号暂存以维持某种电平状态 锁存器的最主要作用是缓存 xff0c 其次完成高速的控制器与慢速的外
  • 与信息熵相关的概念梳理(条件熵/互信息/相对熵/交叉熵)

    香农信息量 信息量表示不确定性的大小 信息量的单位是比特 xff08 bit xff09 香 农 信 息 量 61 log
  • 农业领域的知识图谱构建(Agriculture_KnowledgeGraph)

    Agriculture KnowledgeGraph demo xff1a http ecnukg vicp io github xff1a https github com qq547276542 Agriculture Knowledg
  • vue使用axios给echarts渲染数据不展示的解决方法;

    因为自己遇到了所以分享下解决办法 xff0c 也记一下笔记 xff1b 第一步 xff1a 1 这里首先引入Echarts组件 lt template gt lt div gt lt Echart options 61 34 options