120Echarts - 热力图(Calendar Heatmap Vertical)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_20042935/article/details/89841888

效果图

在这里插入图片描述

源代码

<!DOCTYPE html>
<html>

	<head>
		<meta charset="utf-8">
		<title>ECharts</title>
		<!-- 引入 echarts.js -->
		<script src="js/echarts.min.js"></script>
		<script src="dist/extension/dataTool.js"></script>
	</head>

	<body>
		<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
		<div id="main" style="width: 600px;height:400px;"></div>
		<script type="text/javascript">
			// 基于准备好的dom,初始化echarts实例
			var myChart = echarts.init(document.getElementById('main'));
			var option;

			function getVirtulData(year) {
				year = year || '2017';
				var date = +echarts.number.parseDate(year + '-01-01');
				var end = +echarts.number.parseDate((+year + 1) + '-01-01');
				var dayTime = 3600 * 24 * 1000;
				var data = [];
				for(var time = date; time < end; time += dayTime) {
					data.push([
						echarts.format.formatTime('yyyy-MM-dd', time),
						Math.floor(Math.random() * 1000)
					]);
				}
				return data;
			}

			option = {
				tooltip: {
					position: 'top',
					formatter: function(p) {
						var format = echarts.format.formatTime('yyyy-MM-dd', p.data[0]);
						return format + ': ' + p.data[1];
					}
				},
				visualMap: {
					min: 0,
					max: 1000,
					calculable: true,
					orient: 'vertical',
					left: '670',
					top: 'center'
				},

				calendar: [{
						orient: 'vertical',
						range: '2015'
					},
					{
						left: 300,
						orient: 'vertical',
						range: '2016'
					},
					{
						left: 520,
						cellSize: [20, 'auto'],
						bottom: 10,
						orient: 'vertical',
						range: '2017',
						dayLabel: {
							margin: 5
						}
					}
				],

				series: [{
					type: 'heatmap',
					coordinateSystem: 'calendar',
					calendarIndex: 0,
					data: getVirtulData(2015)
				}, {
					type: 'heatmap',
					coordinateSystem: 'calendar',
					calendarIndex: 1,
					data: getVirtulData(2016)
				}, {
					type: 'heatmap',
					coordinateSystem: 'calendar',
					calendarIndex: 2,
					data: getVirtulData(2017)
				}]
			};

			myChart.setOption(option);
		</script>
	</body>

</html>

猜你喜欢

转载自blog.csdn.net/qq_20042935/article/details/89841888
今日推荐