热力图练习 by 15媒调魏雪莹echarts heatmap配置项内容和展示

支付宝某用户一周消费记录热力图

配置项如下
      app.title = '支付宝某用户一周消费记录热力图(数据为模拟)';


var hours = ['12a', '1a', '2a', '3a', '4a', '5a', '6a',
    '7a', '8a', '9a', '10a', '11a',
    '12p', '1p', '2p', '3p', '4p', '5p',
    '6p', '7p', '8p', '9p', '10p', '11p'
];
var days = ['Saturday', 'Friday', 'Thursday',
    'Wednesday', 'Tuesday', 'Monday', 'Sunday'
];

var data = [

    [0, 0, 50],
    [0, 1, 0],
    [0, 2, 0],
    [0, 3, 0],
    [0, 4, 0],
    [0, 5, 0],
    [0, 6, 0],
    [0, 7, 20],
    [0, 8, 15],
    [0, 9, 0],
    [0, 10, 0],
    [0, 11, 0],
    [0, 12, 40],
    [0, 13, 45],
    [0, 14, 50],
    [0, 15, 55],
    [0, 16, 60],
    [0, 17, 65],
    [0, 18, 70],
    [0, 19, 75],
    [0, 20, 80],
    [0, 21, 85],
    [0, 22, 90],
    [0, 23, 95],
    [1, 0, 40],
    [1, 1, 13],
    [1, 2, 0],
    [1, 3, 0],
    [1, 4, 0],
    [1, 5, 0],
    [1, 6, 0],
    [1, 7, 20],
    [1, 8, 15],
    [1, 9, 23],
    [1, 10, 1],
    [1, 11, 12],
    [1, 12, 16],
    [1, 13, 20],
    [1, 14, 0],
    [1, 15, 0],
    [1, 16, 0],
    [1, 17, 36],
    [1, 18, 40],
    [1, 19, 44],
    [1, 20, 0],
    [1, 21, 0],
    [1, 22, 0],
    [1, 23, 0],
    [2, 0, 0],
    [2, 1, 0],
    [2, 2, 0],
    [2, 3, 0],
    [2, 4, 0],
    [2, 5, 0],
    [2, 6, 5],
    [2, 7, 5],
    [2, 8, 0],
    [2, 9, 0],
    [2, 10, 0],
    [2, 11, 50],
    [2, 12, 3],
    [2, 13, 3],
    [2, 14, 50],
    [2, 15, 0],
    [2, 16, 0],
    [2, 17, 90],
    [2, 18, 150],
    [2, 19, 0],
    [2, 20, 0],
    [2, 21, 0],
    [2, 22, 25],
    [2, 23, 0],
    [3, 0, 0],
    [3, 1, 0],
    [3, 2, 0],
    [3, 3, 0],
    [3, 4, 0],
    [3, 5, 0],
    [3, 6, 0],
    [3, 7, 0],
    [3, 8, 8],
    [3, 9, 28],
    [3, 10, 90],
    [3, 11, 0],
    [3, 12, 0],
    [3, 13, 0],
    [3, 14, 36],
    [3, 15, 0],
    [3, 16, 160],
    [3, 17, 0],
    [3, 18, 0],
    [3, 19, 200],
    [3, 20, 0],
    [3, 21, 0],
    [3, 22, 0],
    [3, 23, 0],
    [4, 0, 0],
    [4, 1, 0],
    [4, 2, null],
    [4, 3, 0],
    [4, 4, 0],
    [4, 5, 0],
    [4, 6, 0],
    [4, 7, 0],
    [4, 8, 12],
    [4, 9, 0],
    [4, 10, 0],
    [4, 11, 0],
    [4, 12, 0],
    [4, 13, 60],
    [4, 14, 200],
    [4, 15, 0],
    [4, 16, 15],
    [4, 17, 0],
    [4, 18, 0],
    [4, 19, 100],
    [4, 20, 0],
    [4, 21, 0],
    [4, 22, 4],
    [4, 23, 0],
    [5, 0, 21],
    [5, 1, 34],
    [5, 2, 0],
    [5, 3, 0],
    [5, 4, 0],
    [5, 5, 0],
    [5, 6, 0],
    [5, 7, 0],
    [5, 8, 0],
    [5, 9, 0],
    [5, 10, 68],
    [5, 11, 0],
    [5, 12, 100],
    [5, 13, 68],
    [5, 14, 0],
    [5, 15, 0],
    [5, 16, 0],
    [5, 17, 0],
    [5, 18, 70],
    [5, 19, 68],
    [5, 20, 0],
    [5, 21, 0],
    [5, 22, 0],
    [5, 23, 0],
    [6, 0, 12],
    [6, 1, 35],
    [6, 2, 0],
    [6, 3, 0],
    [6, 4, 0],
    [6, 5, 0],
    [6, 6, 0],
    [6, 7, 0],
    [6, 8, 0],
    [6, 9, 0],
    [6, 10, 90],
    [6, 11, 4],
    [6, 12, 5],
    [6, 13, 78],
    [6, 14, 90],
    [6, 15, 1],
    [6, 16, 0],
    [6, 17, 0],
    [6, 18, 0],
    [6, 19, 0],
    [6, 20, 300],
    [6, 21, 0],
    [6, 22, 0],
    [6, 23, 4]

];

data = data.map(function(item) {
    return [item[1], item[0], item[2] || '-'];
});

option = {
    tooltip: {
        position: 'top'
    },
    animation: false,
    grid: {
        height: '50%',
        y: '10%'
    },
    xAxis: {
        type: 'category',
        data: hours,
        splitArea: {
            show: true
        }
    },
    yAxis: {
        type: 'category',
        data: days,
        splitArea: {
            show: true
        }
    },
    visualMap: {
        min: 0,
        max: 300,
        calculable: true,
        orient: 'horizontal',
        left: 'center',
        bottom: '15%'
    },
    series: [{
        name: 'Punch Card',
        type: 'heatmap',
        data: data,
        label: {
            normal: {
                show: true
            }
        },
        itemStyle: {
            emphasis: {
                shadowBlur: 10,
                shadowColor: 'rgba(0, 0, 0, 0.5)'
            }
        }
    }]
};
    
截图如下