动态柱状图

描述:当前是关于Echarts图表中的 示例。
 
            var provincialData = [{
        id: "089",
        name: "a",
        value: 0
    },
    {
        id: "088",
        name: "r",
        value: 0
    },
    {
        id: "070",
        name: "r",
        value: 0
    },
    {
        id: "087",
        name: "r",
        value: 0
    },
    {
        id: "084",
        name: "r",
        value: 0
    },
    {
        id: "079",
        name: "h",
        value: 0
    },
    {
        id: "086",
        name: "3",
        value: 0
    },
    {
        id: "085",
        name: "rt",
        value: 0
    },
    {
        id: "081",
        name: "y",
        value: 0
    },
    {
        id: "083",
        name: "hf",
        value: 0
    },
    {
        id: "050",
        name: "dhf",
        value: 0
    },
    {
        id: "059",
        name: "dh",
        value: 0
    },
    {
        id: "051",
        name: "df",
        value: 0
    },
    {
        id: "074",
        name: "dh",
        value: 0
    },
    {
        id: "071",
        name: "q",
        value: 0
    },
    {
        id: "075",
        name: "w",
        value: 0
    },
    {
        id: "038",
        name: "x",
        value: 0
    },
    {
        id: "030",
        name: "c",
        value: 0
    },
    {
        id: "036",
        name: "k",
        value: 0
    },
    {
        id: "034",
        name: "l",
        value: 0
    },
    {
        id: "031",
        name: "oi",
        value: 0
    },
    {
        id: "000",
        name: "",
        value: 0
    },
    {
        id: "076",
        name: "p",
        value: 0
    },
    {
        id: "017",
        name: "i",
        value: 0
    },
    {
        id: "097",
        name: "u",
        value: 0
    },
    {
        id: "090",
        name: "y",
        value: 0
    },
    {
        id: "091",
        name: "t",
        value: 0
    },
    {
        id: "010",
        name: "r",
        value: 0
    },
    {
        id: "019",
        name: "e",
        value: 0
    },
    {
        id: "018",
        name: "f",
        value: 0
    },
    {
        id: "013",
        name: "g",
        value: 0
    },
    {
        id: "011",
        name: "h",
        value: 0
    }
];
option = {
    // backgroundColor: "#000",
    grid: [{
        y2: "60%",
    }, {
        y: "42%",

    }],
    xAxis: [{
        type: 'category',
        show: false,
        boundaryGap: true,
        gridIndex: 0,
        data: (() => {
            const res = [];
            for (let len = 0; len < 30; len += 1) {
                res.push(len);
            }
            return res;
        })()
    }, {
        type: 'value',
        show: false,
        gridIndex: 1,
        boundaryGap: [0, 0.2],
    }],
    yAxis: [{
        type: 'value',
        scale: true,
        show: false,
        gridIndex: 0,
        boundaryGap: [0, 0.2]
    }, {
        type: 'category',
        gridIndex: 1,
        data: provincialData.map(item => item.name),
        axisTick: {
            show: false,
        },
        axisLine: {
            show: false,
        },
        axisLabel: {
            show: false,
            color: '#fff',
            interval: 0
        }
    }],
    series: [{
        name: '',
        type: 'bar',
        barWidth: 12,
        xAxisIndex: 0,
        yAxisIndex: 0,
        itemStyle: {
            normal: {
                barBorderRadius: 30,
                color: new echarts.graphic.LinearGradient(
                    0, 0, 0, 1, [{
                            offset: 0,
                            color: '#00feff'
                        },
                        {
                            offset: 0.5,
                            color: '#027eff'
                        },
                        {
                            offset: 1,
                            color: '#0286ff'
                        }
                    ]
                )
            }
        },
        data: (() => {
            const res = [];
            for (let len = 30; len > 0; len -= 1) {
                res.push(0);
            }
            return res;
        })()
    }, {
        barWidth: 12,
        type: 'pictorialBar',
        symbol: 'roundRect',
        xAxisIndex: 1,
        yAxisIndex: 1,
        symbolRepeat: true,
        symbolSize: [12, 8],
        itemStyle: {
            normal: {
                barBorderRadius: [0, 30, 30, 0],
                color: new echarts.graphic.LinearGradient(
                    0, 0, 0, 1, [{
                            offset: 0,
                            color: '#00feff'
                        },
                        {
                            offset: 0.5,
                            color: '#027eff'
                        },
                        {
                            offset: 1,
                            color: '#0286ff'
                        }
                    ]
                )
            }
        },
        data: provincialData.map(item => item.value),
    }]
};
setInterval(() => {
    const axisData = option.xAxis[0].data;
    option.series[0].data.shift();
    option.series[0].data.push(Math.random() * 1000);
    option.xAxis[0].data.shift();
    option.xAxis[0].data.push(axisData[axisData.length - 1] + 1);
    for (var i = 0; i < provincialData.length; i++) {
        if (provincialData[i].name !== '') {
            provincialData[i].value = Math.random() * 1000;
        }
    }
    option.series[1].data = provincialData;

    myChart.setOption(option);
}, 300);