带背景的渐变柱状图

描述:当前是关于Echarts图表中的 柱状图 示例。
 
            // import echarts from 'echarts'
var charts = { // 按顺序排列从大到小
    cityList: ['地面及周围整洁', '自行车停放不整齐', '建筑物立面不整洁美观', '有杂物垃圾,有污水', '绿化设施破坏'],
    cityData: [78, 68, 62, 57, 53]
}
var top10CityList = charts.cityList
var top10CityData = charts.cityData
var color = [['#3d3e4b','#7d7684'], ['#f82a00','#f19873'], ['#ffc500','#fff180'], ['#026eff','#70b9ff'],['#22ac8a','#74f5b0']]

let lineY = []
let BgY = []
for (var i = 0; i < charts.cityList.length; i++) {
    var x = i
    if (x > color.length - 1) {
        x = color.length - 1
    }
    var data = {
        name: charts.cityList[i],
        value: top10CityData[i],
        itemStyle: {
            normal: {
                show: true,
                color: new echarts.graphic.LinearGradient(0, 0, 1, 0, [{
                    offset: 0,
                    color: color[x][0]
                }, {
                    offset: 1,
                    color: color[x][1]
                }], false),
                barBorderRadius: 10
            },
            emphasis: {
                shadowBlur: 15,
                shadowColor: 'rgba(0, 0, 0, 0.1)'
            }
        }
    }
     var bdata = {
        name: charts.cityList[i],
        value: 100,
        itemStyle: {
            normal: {
                show: true,
                color: '#ffffff',
                borderColor: new echarts.graphic.LinearGradient(0, 0, 1, 0, [{
                    offset: 0,
                    color: color[x][0]
                }, {
                    offset: 1,
                    color: color[x][1]
                }], false),
                barBorderRadius: 10
            },
            emphasis: {
                shadowBlur: 15,
                shadowColor: 'rgba(0, 0, 0, 0.1)'
            }
        }
    }
    lineY.push(data);
    BgY.push(bdata);
}
option = {
    grid: {
        left: '5%',
        right: '5%',
        bottom: '5%',
        top: '10%',
        containLabel: true
    },
    tooltip: {
        trigger: 'axis',
        axisPointer: {
            type: 'none'
        },
        formatter: function(params) {
            return params[0].name + '<br/>' + params[0].seriesName + ' : ' + params[0].value + '<br/>'
        }
    },
    backgroundColor: '#ffffff',
    xAxis: {
        show: false,
        type: 'value'
    },
    yAxis: [{
        type: 'category',
        inverse: true,
        axisLabel: {
            show: false
        },
        splitLine: {
            show: false
        },
        axisTick: {
            show: false
        },
        axisLine: {
            show: false
        },
        data: ['大米', '玉米', '蔬菜', '鸡蛋', '坚果']
    }, {
        type: 'category',
        inverse: true,
        axisTick: 'none',
        axisLine: 'none',
        show: true,
        axisLabel: {
            textStyle: {
                color: '#323656',
                fontSize: '12'
            },
            formatter: function(value) {
                if (value >= 10000) {
                    return (value / 10000).toLocaleString() + '万';
                } else {
                    return value.toLocaleString();
                }
            },
        },
        data: top10CityData
    }],
    series: [{
            name: '问题数目',
            type: 'bar',
            zlevel: 1,
             label: {
                normal: {
                    color: '#323656',
                    show: true,
                    position: [0, '-24px'],
                    textStyle: {
                        fontSize: 14
                    },
                    formatter: function(a, b) {
                        return a.name
                    }
                }
            },
            barWidth: 20,
            data:lineY
        },
        {
            name: '背景',
            type: 'bar',
            barWidth: 20,
            barGap: '-100%',
            data: BgY,
        },
    ]
};