日历

描述:当前是关于Echarts图表中的 示例。
 
            let dataList = [{
    "date": "2019-10-01",
    "total": 0
}, {
    "date": "2019-10-02",
    "total": 0
}, {
    "date": "2019-10-03",
    "total": 0
}, {
    "date": "2019-10-04",
    "total": 0
}, {
    "date": "2019-10-05",
    "total": 0
}, {
    "date": "2019-10-06",
    "total": 0
}, {
    "date": "2019-10-07",
    "total": 0
}, {
    "date": "2019-10-08",
    "total": 0
}, {
    "date": "2019-10-09",
    "total": 0
}, {
    "date": "2019-10-10",
    "total": 0
}, {
    "date": "2019-10-11",
    "total": 0
}, {
    "date": "2019-10-12",
    "total": 0
}, {
    "date": "2019-10-13",
    "total": 0
}, {
    "date": "2019-10-14",
    "total": 0
}, {
    "date": "2019-10-15",
    "total": 14
}, {
    "date": "2019-10-16",
    "total": 2
}, {
    "date": "2019-10-17",
    "total": 0
}, {
    "date": "2019-10-18",
    "total": 0
}, {
    "date": "2019-10-19",
    "total": 0
}, {
    "date": "2019-10-20",
    "total": 0
}, {
    "date": "2019-10-21",
    "total": 1
}, {
    "date": "2019-10-22",
    "total": 3
}, {
    "date": "2019-10-23",
    "total": 2
}, {
    "date": "2019-10-24",
    "total": 1
}, {
    "date": "2019-10-25",
    "total": 0
}, {
    "date": "2019-10-26",
    "total": 0
}, {
    "date": "2019-10-27",
    "total": 0
}, {
    "date": "2019-10-28",
    "total": 0
}, {
    "date": "2019-10-29",
    "total": 0
}, {
    "date": "2019-10-30",
    "total": 0
}, {
    "date": "2019-10-31",
    "total": 0
}]
let thisDate = '2019-10-24'; //当前日期
let thisMonth = '2019-10'; //当前月份
let maxArr = [];
let bgColor = ['#ffffff', '#FFD8C9', '#FF784C', '#FFAF8B']; //填充色


let chartData = [];
dataList.forEach(item => {
    maxArr.push(item.total);
    chartData.push({
        value: [item.date, item.total],
        itemStyle: item.date === thisDate ? {
            borderColor: 'red'
        } : {}, //当前日期标注边框为红色
        symbol: 'rect' // 核心1,长方形来填充
    })
})

//visualMap 填充色对比 最大值
let maxNum = maxArr.sort((a, b) => b - a)[0];


option = {
    backgroundColor: '#fff',
    calendar: {
        left: 'center',
        top: '20%',
        orient: 'vertical',
        cellSize: 60, //大小
        range: thisMonth, //月份
        monthLabel: {
            show: false, //隐藏左侧文字
        },
        dayLabel: {
            firstDay: 1, //开始时间 1号开始
            nameMap: ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],
        },
        yearLabel: {
            show: false, //隐藏title
        },
    },
    visualMap: {
        type: 'continuous',
        min: 0,
        max: maxNum, //色值对比 最大值
        show: false, //隐藏工具栏
        inRange: {
            color: bgColor, //填充色
        },
    },
    series: [{
            type: 'scatter',
            coordinateSystem: 'calendar',
            symbolSize(params) { //核心2 
                if (params[0] === thisDate) {
                    return 60; //当前日期高亮 宽度高度设置成和单元格宽度高度一样
                } else {
                    return 1;
                }
            },
            label: {
                normal: {
                    show: true,
                    textStyle: {
                        color: '#fff',
                    },
                },
            },
            data: chartData,
        },
        {
            type: 'heatmap',
            coordinateSystem: 'calendar',
            data: chartData,
        },
    ],
};