blob: 1efce04a4ab5079e1a8281dbcd73819cbc791dd2 [file] [log] [blame]
<html>
<head>
<meta charset="utf-8">
<title>calendar</title>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="lib/reset.css">
<script src="lib/esl.js"></script>
<script src="lib/config.js"></script>
<script src="lib/jquery.min.js"></script>
</head>
<body>
<style>
html, body, #main {
width: 100%;
height: 100%;
}
</style>
<div id="main"></div>
<script>
var getVirtulData = function(year) {
year = year || '2017';
var datas = [];
var arr31 = [1, 3, 5, 7, 8, 10, 12];
var arr30 = [4, 6, 9, 11];
for (var i = 1; i <= 31; i++) {
for (var j = arr31.length - 1; j >= 0; j--) {
datas.push([year + '-' + arr31[j] + '-' + i, Math.floor(Math.random() * 1000)]);
}
}
for (var i = 1; i <= 30; i++) {
for (var j = arr30.length - 1; j >= 0; j--) {
datas.push([year + '-' + arr30[j] + '-' + i, Math.floor(Math.random() * 1000)]);
}
}
for (var i = 1; i <= 29; i++) {
datas.push([year + '-2-' + i, Math.floor(Math.random() * 1000)]);
}
return datas;
}
var graphData = [
[
1485878400000,
260
],
[
1486137600000,
200
],
[
1486569600000,
279
],
[
1486915200000,
847
],
[
1487347200000,
241
],
[
1487779200000,
411
],
[
1488124800000,
985
]
];
var links = graphData.map(function (item, idx) {
return {
source: idx,
target: idx + 1
};
});
links.pop();
require([
'echarts'
// 'echarts/chart/heatmap',
// 'echarts/chart/scatter',
// 'echarts/chart/effectScatter',
// 'echarts/chart/graph',
// 'echarts/component/title',
// 'echarts/component/legend',
// 'echarts/component/calendar',
// 'echarts/component/tooltip',
// 'echarts/component/visualMap'
], function (echarts) {
var chart = echarts.init(document.getElementById('main'));
chart.setOption({
tooltip: {
position: 'top'
},
visualMap: {
min: 0,
max: 1000,
calculable: true,
orient: 'horizontal',
left: 'center',
top: 650
},
calendar: [
{
orient: 'vertical',
range: '2000-01-01'
},
{
cellSize: 35,
left: 300,
orient: 'vertical',
range: ['2001-02-20', '2001-02-23']
},
{
left: 600,
cellSize: 30,
orient: 'vertical',
range: '2017-02'
},
{
left: 900,
orient: 'vertical',
range: ['2001-02-20', '2001-04-23']
},
{
top: 300,
orient: 'horizontal',
range: ['2001-02-12', '2001-04-23']
},
{
top: 300,
left: 400,
orient: 'horizontal',
range: ['2009-12-20', '2010-04-23']
},
{
top: 300,
left: 820,
orient: 'horizontal',
range: '2010-02-09'
},
{
top: 300,
left: 910,
orient: 'horizontal',
range: ['2010-02-07', '2010-02-11']
},
{
top: 300,
left: 1000,
orient: 'horizontal',
range: ['2010-02-11', '2010-02-13']
},
{
top: 300,
left: 1100,
orient: 'horizontal',
range: ['2010-02-11', '2010-02-14']
},
{
top: 300,
left: 1200,
orient: 'horizontal',
range: ['2010-02-11', '2010-02-16']
},
{
top: 500,
orient: 'horizontal',
range: [2010]
}],
series: [{
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 0,
data: getVirtulData(2000)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 1,
data: getVirtulData(2001)
}, {
type: 'graph',
coordinateSystem: 'calendar',
calendarIndex: 2,
edgeSymbol: ['none', 'arrow'],
links: links,
symbolSize: 10,
data: graphData
}, {
type: 'scatter',
coordinateSystem: 'calendar',
calendarIndex: 3,
symbolSize: function (val) {
return val[1] / 70;
},
data: getVirtulData(2001)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 4,
data: getVirtulData(2001)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 5,
data: getVirtulData(2010)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 6,
data: getVirtulData(2010)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 7,
data: getVirtulData(2010)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 8,
data: getVirtulData(2010)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 9,
data: getVirtulData(2010)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 10,
data: getVirtulData(2010)
}, {
type: 'heatmap',
coordinateSystem: 'calendar',
calendarIndex: 11,
data: getVirtulData(2010)
}]
});
$(window).resize(function() {
chart.resize();
});
});
</script>
</body>
</html>