双立体柱子

描述:当前是关于Echarts图表中的 示例。
 
            var xData = ['1', '2', '3'],
    yData1 = ['91', '51', '29'],
    yData2 = ['83', '81', '20'],
    barWidth = 40,
    color1 = {
        x: 0,
        y: 0,
        x2: 0,
        y2: 1,
        type: 'linear',
        global: false,
        colorStops: [
            {
                //第一节下面
                offset: 0,
                color: 'rgba(32, 170, 146,0.8)',
            },
            {
                offset: 1,
                color: 'rgba(20, 76, 41,1)',
            },
        ],
    },
    color2 = {
        x: 0,
        y: 0,
        x2: 0,
        y2: 1,
        type: 'linear',
        global: false,
        colorStops: [
            {
                //第一节下面
                offset: 0,
                color: 'rgba(5, 164, 224,0.8)',
            },
            {
                offset: 1,
                color: 'rgba(16, 57, 89,1)',
            },
        ],
    },
    maxData=yData1.map(() => 100),
    circleData=yData1.map(() => ({ name: '', value: 100, symbolPosition: 'end' }));

option = {
    backgroundColor: 'rgb(6, 29, 43)', //背景色
    legend: {
        data: ['A', 'B'],
        icon: 'rect',
        top: 5,
        right: 10,
        textStyle: {
            color: '#fff',
            fontWeight: 'normal',
            fontSize: 12,
        },
    },
    //提示框
    tooltip: {
        show: true,
        trigger: 'axis',
        axisPointer: {
            type: 'shadow',
        },
    },
    grid: {
        top: '25%',
        left: '5%',
        bottom: '10%',
        right: '5%',
        containLabel: true,
    },
    animation: false,
    xAxis: [
        {
            type: 'category',
            axisTick: {
                show: false,
            },
            axisLine: {
                show: true,
                lineStyle: {
                    color: 'rgba(0,228,255,1)',
                },
            },
            axisLabel: {
                inside: false,
                textStyle: {
                    color: '#fff',
                    fontWeight: 'normal',
                    fontSize: 12,
                },
                margin: 20, //刻度标签与轴线之间的距离。
            },
            data: xData,
        },
        {
            type: 'category',
            axisLine: {
                show: false,
            },
            axisTick: {
                show: false,
            },
            axisLabel: {
                show: false,
            },
            splitArea: {
                show: false,
            },
            splitLine: {
                show: false,
            },
            data: xData,
        },
    ],
    yAxis: [
        {
            show: true,
            type: 'value',
            axisLabel: {
                textStyle: {
                    color: '#fff',
                },
            },
            splitLine: {
                show: false,
            },
            axisLine: {
                show: true,
                lineStyle: {
                    color: 'rgba(0,228,255,1)',
                },
            },
        },
    ],

    series: [
        {
            name: '内部柱子顶部',
            type: 'pictorialBar',
            tooltip: { show: false },
            symbolSize: [barWidth, 10],
            symbolOffset: ['-81%', -5],
            symbolPosition: 'end',
            z: 15,
            color: 'rgba(45, 206, 177,0.9)',
            zlevel: 2,
            data: yData1,
        },
        {
            name: '内部柱子顶部2',
            type: 'pictorialBar',
            tooltip: { show: false },
            symbolSize: [barWidth, 10],
            symbolOffset: ['81%', -5],
            symbolPosition: 'end',
            z: 15,
            color: 'rgba(2, 175, 249,1)',
            zlevel: 2,
            data: yData2,
        },

        {
            name: '中间柱子1',
            type: 'bar',
            barGap: '60%',
            barWidth: barWidth,
            itemStyle: {
                color: color1,
                borderColor: color1,
                borderWidth: 1,
                borderType: 'solid',
            },
            label: {
                show: false,
                
            },
            zlevel: 2,
            data: yData1,
        },
        {
            name: '中间柱子2',
            type: 'bar',
            barGap: '60%',
            barWidth: barWidth,
            itemStyle: {
                color: color2,
                borderColor: color2,
                borderWidth: 1,
                borderType: 'solid',
            },
            label: {
                show: false,
            },
            zlevel: 2,
            data: yData2,
        },
        {
            name: '背景柱子1',
            type: 'bar',
            tooltip: { show: false },
            xAxisIndex: 1,
            barGap: '60%',
            data: yData1.map(() => 100),
            zlevel: 1,
            barWidth: barWidth,
            itemStyle: {
                normal: {
                    color: 'rgba(16, 56, 70,.8)',
                },
            },
        },
        {
            name: '背景柱子2',
            type: 'bar',
            tooltip: { show: false },
            xAxisIndex: 1,
            barGap: '60%',
            data: yData1.map(() => 100),
            zlevel: 1,
            barWidth: barWidth,
            itemStyle: {
                normal: {
                    color: 'rgba(9, 44, 76,.8)',
                },
            },
        },
        {
            name: '底部圆1',
            type: 'pictorialBar',
            tooltip: { show: false },
            symbolSize: [barWidth, 10],
            symbolOffset: ['-81%', 5],
            z: 12,
            color: 'rgb(19, 74, 35)',
            data: maxData,
        },
        {
            name: '底部圆2',
            type: 'pictorialBar',
            tooltip: { show: false },
            symbolSize: [barWidth, 10],
            symbolOffset: ['81%', 5],
            z: 12,
            color: 'rgb(16, 57, 89)',
            data: maxData,
        },
        // 头
        {
            name: '顶部圆1',
            type: 'pictorialBar',
            tooltip: { show: false },
            z: 20,
            zlevel: 3,
            symbolPosition: 'end',
            symbolSize: [barWidth, 10],
            symbolOffset: [-32, -5],
            itemStyle: {
                normal: {
                    shadowColor: 'rgba(0, 0, 0, .3)',
                    shadowBlur: 5,
                    shadowOffsetY: 3,
                    shadowOffsetX: 0,
                    color: 'rgba(30, 100, 112,1)',
                },
            },
            data:circleData,
        },
        {
            name: '顶部圆2',
            type: 'pictorialBar',
            tooltip: { show: false },
            z: 20,
            zlevel: 2,
            symbolPosition: 'end',
            symbolSize: [barWidth, 10],
            symbolOffset: ['81%', -5],
            itemStyle: {
                normal: {
                    shadowColor: 'rgba(0, 0, 0, .3)',
                    shadowBlur: 5,
                    shadowOffsetY: 3,
                    shadowOffsetX: 0,
                    color: 'rgba(15, 69, 133,1)',
                },
            },
            data: circleData,
        },
    ],
};