vue+echarts实带渐变效果的折线图

本文实例为大家分享了vue + element ui实现锚点定位的具体代码,供大家参考,具体内容如下

1、安装echarts

npm install echarts --save

2、引入echarts

import echarts from "echarts";
//修改原型链,可在全局使用
Vue.prototype.$echarts = echarts;

3、创建图表 首先需要在 HTML 中创建图表的容器

<div id="echarts_coverage"></div>
// css  图表的容器必须指定宽高
#echarts_coverage{
      width: 400px;
      height: 200px;
}

4、渲染图表

<script>
export default {
  mounted() {
    this.initLineChart();
  },
  methods: {
    initLineChart() {
      let data = [
        {
          dateStr: "2019第1季度",
          numberStr: 10,
        },
        {
          dateStr: "2019第1季度",
          numberStr: 50,
        },
        {
          dateStr: "2019第1季度",
          numberStr: 35,
        },
        {
          dateStr: "2019第1季度",
          numberStr: 92,
        },
        {
          dateStr: "2019第1季度",
          numberStr: 70,
        },
        {
          dateStr: "2019第1季度",
          numberStr: 80,
        },
      ];
      let lineData = {};
      lineData.label = data.map((item) => item.dateStr);
      lineData.data = data.map((item) => item.numberStr);
      let chart = this.$echarts.init(
        document.getElementById("echarts_coverage")
      );
      let option = {
        color: ["#3DB821"],
        tooltip: {
          trigger: "axis",
        },
        grid: {
          left: "3%",
          right: "5%",
          bottom: "8%",
          top: "20%",
          containLabel: true,
        },
        xAxis: {
          type: "category",
          offset: 6,
          axisLine: { lineStyle: { color: " #CCCCCC" } },
          axisTick: {
            show: false,
          },
          axisLabel: {
            interval: 0,
            rotate: 18,
            textStyle: {
              color: "#000",
              fontStyle: "normal",
              fontFamily: "微软雅黑",
              fontSize: 13,
              margin: 10,
            },
          },
          data: lineData.label,
        },
        yAxis: {
          type: "value",
          name: "(%)",
          nameTextStyle: {
            align: "right",
            color: "#4D4D4D",
          },
          axisLine: {
            show: false,
            lineStyle: { color: "#CCCCCC" },
          },
          axisTick: { show: false },
          splitLine: {
            show: true,
            lineStyle: { type: "dashed", color: "#CCCCCC" },
          },
          axisLabel: {
            textStyle: {
              color: "#4D4D4D",
              fontSize: 14,
            },
          },
        },
        series: [
          {
            name: "数量",
            type: "line",
            stack: "总量",
            // symbol: "circle",
            symbolSize: 8,
            minInterval: 6,
            data: lineData.data,
            smooth: false,
            areaStyle: {
              normal: {
                color: {
                  x: 0,
                  y: 0,
                  x2: 0,
                  y2: 1,
                  colorStops: [
                    {
                      offset: 0,
                      color: "#3DB821", // 0% 处的颜色
                    },
                    {
                      offset: 0.5,
                      color: "rgba(51,180,21,.5)", // 100% 处的颜色
                    },
                    {
                      offset: 1,
                      color: "rgba(51,180,21,.1)", // 100% 处的颜色
                    },
                  ],
                  globalCoord: false, // 缺省为 false
                },
              },
            },
          },
        ],
      };
      chart.setOption(option);
    },
  },
};
</script>

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

(0)

相关推荐

  • vue+echarts实现动态折线图的方法与注意

    之前公司有个绘制实时盈利率折线图的需求,实现的还不错,今天来分享下vue+echarts实现动态折线图的方法. 实现代码 <template> <div id="myChart"></div> </template> <script> import echarts from 'echarts' export default { name: 'DynamicLineChart', data () { return { // 实时

  • VUE项目中封装Echart折线图的方法

    本文实例为大家分享了VUE项目中封装Echart折线图的具体代码,供大家参考,具体内容如下 封装Echart折线图,可显示多条折线 1. 首先在项目中全局引入Echarts,main.js中: import * as echarts from 'echarts' Vue.prototype.$echarts = echarts 2.components中新建组件baseLineChart.vue,以下代码直接复制: <template>     <div       id="b

  • 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&qu

  • vue+echart实现圆滑折线图

    本文实例为大家分享了vue+echart实现圆滑折线图的具体代码,供大家参考,具体内容如下 效果图: 安装依赖: npm install echarts --save     import echarts from "echarts"; 完整代码: <template>   <div>     <div id="demo"></div>   </div> </template> <scri

  • vue使用ECharts实现折线图和饼图

    在开发后台管理项目时,需要统计后台用户数据,以折线图和饼图的形式显示,这边采用apache-echarts来实现需求. 1.安装echarts和引入 npm install echarts --save import * as echarts from 'echarts'; 2.使用echarts实现pie图 <template> <div id="chartPie" class="pie-wrap"></div> </te

  • vue实现折线图 可按时间查询

    本文实例为大家分享了vue实现可按时间查询的折线图的具体代码,供大家参考,具体内容如下 1.vue前端 //查询条件 <template> <el-date-picker v-model="listQuery.toptime" :picker-options="pickerOptions" style="width: 380px" type="daterange" clearable range-separa

  • 在vue中使用echarts(折线图的demo,markline用法)

    公司最近在用vue开发项目,项目接近尾声了,趁休息时间写点demo-- vue引入echarts(折线图的demo) 主要是解决引入echarts,markline的使用(基准线) 这是demo的效果图: vue脚手架不多赘述 1.安装依赖 cnpm install echarts -S 2.在main.js中引入echarts import echarts from 'echarts' 3.在main.js中安装 Vue.prototype.echarts = echarts; 一般来说能正常

  • vue使用echarts实现折线图

    本文实例为大家分享了vue使用echarts实现折线图的具体代码,供大家参考,具体内容如下 效果图: 代码: <template>             <div class="proCharts" ref='charts'>             </div> </template> <script> import echarts from 'echarts'   //npm install echarts@4.9.0

  • Vue+Echarts实现简单折线图

    本文实例为大家分享了Vue+Echarts实现简单折线图的具体代码,供大家参考,具体内容如下 Vue+Echarts实现一个折线图,打开vue的项目: 1.在项目里面安装echarts npm install echarts --save 2.在需要用图表的地方引入 import echarts from 'echarts' 3.打开my.vue 继续写代码,代码如下: <template>     <!--为echarts准备一个具备大小的容器dom-->     <div

  • vue+echarts实现多条折线图

    本文实例为大家分享了vue+echarts实现多条折线图的具体代码,供大家参考,具体内容如下 数据未使用json格式,直接写在页面 大致效果 页面代码: <template>     <!--为echarts准备一个具备大小的容器dom-->     <div id="main" style="width: 100%;height: 300px;"></div> </template> <script

随机推荐