• 动态数据+时间坐标轴(部分注释)


    //动态数据+时间坐标轴
    <template>
    <div class="demo6 echart-box" ref="myechart" id="main"></div>
    </template>
    <script>

    function randomData() {
    now = new Date(+now + oneDay);
    value = value + Math.random() * 21 - 10;
    return {
    //toString()函数用于将当前对象以字符串的形式返回
    name: now.toString(),
    value: [
    [now.getFullYear(), now.getMonth() + 1, now.getDate()].join("/"),
    Math.round(value)
    ]
    };
    }

    var data = [];
    var now = +new Date(1997, 9, 3);
    var oneDay = 24 * 3600 * 1000;
    var value = Math.random() * 1000;
    for (var i = 0; i < 1000; i++) {
    data.push(randomData());
    }

    export default {
    name: "demo6",
    data() {
    return {};
    },
    mounted: function() {
    let myChart = this.$echarts.init(document.getElementById("main"));
    //这个是第二种引用方法,必须先进行声明
    let option = {
    title: {
    text: "动态数据 + 时间坐标轴"
    },
    tooltip: {
    trigger: "axis",
    formatter: function(params) {
    params = params[0];
    var date = new Date(params.name);
    //返回日月年还有数据,数据是从第二个开始的
    return (
    date.getDate() +
    "/" +
    (date.getMonth() + 1) +
    "/" +
    date.getFullYear() +
    " : " +
    params.value[1]
    );
    },
    //改完以后X轴右下角有变化
    axisPointer: {
    animation: false
    }
    },
    xAxis: {
    type: "time",
    //坐标轴在 grid 区域中的分隔线。
    splitLine: {
    show: true
    }
    },
    yAxis: {
    type: "value",
    //坐标轴两边留白策略,类目轴和非类目轴的设置和表现不一样。
    boundaryGap: [0, "100%"],
    //坐标轴在 grid 区域中的分隔线。
    splitLine: {
    show: true
    }
    },
    series: [
    {
    name: "模拟数据",
    type: "line",
    //是否显示 symbol, 如果 false 则只有在 tooltip hover 的时候显示。
    showSymbol: false,
    //是否开启 hover 在拐点标志上的提示动画效果。
    hoverAnimation: false,
    data: data
    }
    ]
    };
     
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);

    setInterval(function() {
    for (var i = 0; i < 5; i++) {
    //shift函数是数组原来的第一个元素的值。
    data.shift();
    data.push(randomData());
    }

    //在这个方法中定义的图表变量必须把这个方法放到可以检查出来的地方
    myChart.setOption({
    series: [
    {
    data: data
    }
    ]
    //在执行方法的时候重新给它一个值
    });
    }, 1000);

    }
    };
    </script>

    <style scoped>
    h1,
    h2 {
    font-weight: normal;
    }
    ul {
    list-style-type: none;
    padding: 0;
    }
    li {
    display: inline-block;
    margin: 0 10px;
    }
    a {
    color: #42b983;
    }
    .demo6 {
    1000px;
    height: 600px;
    background: #cce6f0;
    /* margin: 0 auto; */
    }
    </style>

    本文仅提供参考,是本人闲时所写笔记,如有错误,还请赐教,作者:阿蒙不萌,大家可以随意转载

  • 相关阅读:
    PAT B1045 快速排序 (25 分)
    PAT B1042 字符统计 (20 分)
    PAT B1040 有几个PAT (25 分)
    PAT B1035 插入与归并 (25 分)
    PAT B1034 有理数四则运算 (20 分)
    PAT B1033 旧键盘打字 (20 分)
    HDU 1231 最大连续子序列
    HDU 1166 敌兵布阵
    HDU 1715 大菲波数
    HDU 1016 Prime Ring Problem
  • 原文地址:https://www.cnblogs.com/huchong-bk/p/11400624.html
Copyright © 2020-2023  润新知