Vue+Echarts实现柱状折线图

 更新时间:2022年04月02日 10:12:59   作者:天使的同类  
这篇文章主要为大家详细介绍了Vue+Echarts实现柱状折线图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Vue+Echarts实现柱状折线图的具体代码,供大家参考,具体内容如下

vue处理json数据渲染柱状折线图

HTML:

<div id="lineCharts" style="width: 100%; height: 500px; margin-top: 20px"></div>

JS:

drawLineCharts() {
        let data = {sid: "02fertdfg0221",choose: 1,};  //这里是接口的传参
        axios
          .request({
            url: url,  //接口地址
            method: "POST",
            data: JSON.stringify(data),
          })
          .then((res) => {
            let dateData = []; //日期
            let rankingData = []; //排行
            let commentsData = []; //销量
            let outdata = JSON.stringify(res.result); //数据
            let xqo = eval("(" + outdata + ")"); //转换类型
            for (var i in xqo) {   //分别获取日期  排行  和 销量的数组值
              dateData.push(xqo[i].create_time.substring(0, 10));
              commentsData.push(xqo[i].comments_value);
              rankingData.push(xqo[i].ranking);
            }
            this.chartPie = echarts.init(document.getElementById("lineCharts"));  //表格id
            this.chartPie.setOption({
              title: {
                text: "",
              },
              tooltip: {
                trigger: "axis",
                axisPointer: {
                  // 坐标轴指示器,坐标轴触发有效
                  type: "shadow", // 默认为直线,可选为:'line' | 'shadow'
                },
              },
              legend: {
                orient: "horizontal",
                data: ["热度", "销量"],
              },
              grid: {
                x: 46,
                y: 35,
                x2: 37,
                y2: 40,
                borderWidth: 0,
              },
              calculable: true,
              xAxis: [
                {
                  type: "category",
                  data: dateData,
                  splitLine: {
                    show: false,
                  },
                  axisLabel: {
                    show: true,
                    margin: 20,
                    textStyle: {
                      color: "#a4a7ab",
                      align: "center",
                    },
                  },
                },
              ],
              yAxis: [
                {
                  name: "销量趋势",
                  type: "value",
                  splitLine: {
                    show: false,
                  },
                  axisLabel: {
                    show: true,
                    textStyle: {
                      color: "#a4a7ab",
                    },
                  },
                  // min: 100,
                },
                {
                  name: "热度排名",
                  type: "value",
                  position: "right",
                  splitLine: {
                    show: false,
                  },
                  axisLabel: {
                    show: true,
                    formatter: "{value}",
                    textStyle: {
                      color: "#a4a7ab",
                    },
                  },
                },
              ],
              series: [
                {
                  name: "热度",
                  type: "bar",
                  barWidth: "20",
                  data: rankingData,
                  itemStyle: {
                    normal: {
                      barBorderRadius: 5,
                      color: "#36A1DB",
                    },
                  },
                },
                {
                  name: "销量",
                  type: "line",
                  // smooth: true,
                  showAllSymbol: true,
                  symbol: "emptyCircle",
                  symbolSize: 5,
                  yAxisIndex: 1,
                  data: commentsData,
                  itemStyle: {
                    normal: {
                      color: "#EEAB56",
                    },
                  },
                },
              ],
            });
          });
    },

最后就是效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • vue跨域proxy代理配置详解

    vue跨域proxy代理配置详解

    今天被vue中proxy配置困扰了一天,记录一下,下面这篇文章主要给大家介绍了关于Vue配置文件中的proxy配置方式的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • 结合mint-ui移动端下拉加载实践方法总结

    结合mint-ui移动端下拉加载实践方法总结

    下面小编就为大家带来一篇结合mint-ui移动端下拉加载实践方法总结。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • 解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题

    解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题

    这篇文章主要介绍了解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • vue.js+element-ui的基础表单实例代码

    vue.js+element-ui的基础表单实例代码

    这篇文章主要介绍了vue.js+element-ui的基础表单实例代码,技术栈即html+vue.js+element-ui,而使用它们的方法也很简单,引入对应的js和css文件即可,需要的朋友可以参考下
    2024-03-03
  • VUE生命周期全面系统详解

    VUE生命周期全面系统详解

    Vue的生命周期就是vue实例从创建到销毁的全过程,也就是new Vue() 开始就是vue生命周期的开始。Vue 实例有⼀个完整的⽣命周期,也就是从开始创建、初始化数据、编译模版、挂载Dom -> 渲染、更新 -> 渲染、卸载 等⼀系列过程,称这是Vue的⽣命周期
    2022-07-07
  • Vue Form表单的使用方法(rules格式校验网络校验键盘按键监听)

    Vue Form表单的使用方法(rules格式校验网络校验键盘按键监听)

    本文介绍了在Vue.js中使用表单校验规则(rules)进行网络请求校验的方法,以及如何通过formRef引用表单对象并进行键盘按键监听,感兴趣的朋友跟随小编一起看看吧
    2024-11-11
  • vue如何给element-ui中的el-tabs动态设置label属性

    vue如何给element-ui中的el-tabs动态设置label属性

    这篇文章主要介绍了vue如何给element-ui中的el-tabs动态设置label属性,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • 简单理解vue中track-by属性

    简单理解vue中track-by属性

    这篇文章主要帮助大家简单的理解vue中track-by属性,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • Vue组件之Tooltip的示例代码

    Vue组件之Tooltip的示例代码

    这篇文章主要介绍了Vue组件之Tooltip的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • 关于axios不能使用Vue.use()浅析

    关于axios不能使用Vue.use()浅析

    这篇文章主要给大家介绍了关于axios不能使用Vue.use()的相关资料,文中通过示例代码介绍的非常详细,对大家的理解和学习具有一定的参考学习价值,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-01-01

最新评论