Mon 21 Jul 22:43:21 CEST 2025
This commit is contained in:
parent
9a0a8d59a1
commit
2c0bdd2440
110
js/dos/ext/vis/examples/timeline/other/groupsPerformance.html
Normal file
110
js/dos/ext/vis/examples/timeline/other/groupsPerformance.html
Normal file
|
@ -0,0 +1,110 @@
|
|||
<html>
|
||||
<head>
|
||||
<title>Timeline | A lot of grouped data</title>
|
||||
|
||||
<script src="../../../dist/vis.js"></script>
|
||||
<link href="../../../dist/vis.css" rel="stylesheet" type="text/css" />
|
||||
|
||||
<style type="text/css">
|
||||
body {
|
||||
color: #4D4D4D;
|
||||
font: 10pt arial;
|
||||
}
|
||||
</style>
|
||||
<script src="../../googleAnalytics.js"></script>
|
||||
</head>
|
||||
|
||||
<body onresize="/*timeline.checkResize();*/">
|
||||
<h1>Timeline grouping performance</h1>
|
||||
|
||||
<p>
|
||||
Choose a number of items:
|
||||
<a href="?count=100">100</a>,
|
||||
<a href="?count=1000">1000</a>,
|
||||
<a href="?count=10000">10000</a>,
|
||||
<a href="?count=10000">100000</a>
|
||||
<p>
|
||||
<p>
|
||||
Current number of items: <span id='count'>100</span>
|
||||
</p>
|
||||
|
||||
<div id="mytimeline"></div>
|
||||
|
||||
<script>
|
||||
/**
|
||||
* Get URL parameter
|
||||
* http://www.netlobo.com/url_query_string_javascript.html
|
||||
*/
|
||||
function gup( name ) {
|
||||
name = name.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");
|
||||
var regexS = "[\\?&]"+name+"=([^&#]*)";
|
||||
var regex = new RegExp( regexS );
|
||||
var results = regex.exec( window.location.href );
|
||||
if( results == null )
|
||||
return "";
|
||||
else
|
||||
return results[1];
|
||||
}
|
||||
|
||||
// get selected item count from url parameter
|
||||
var count = (Number(gup('count')) || 1000);
|
||||
|
||||
// create groups
|
||||
var groups = new vis.DataSet([
|
||||
{id: 1, content: 'Truck 1'},
|
||||
{id: 2, content: 'Truck 2'},
|
||||
{id: 3, content: 'Truck 3'},
|
||||
{id: 4, content: 'Truck 4'}
|
||||
]);
|
||||
|
||||
// create items
|
||||
var items = new vis.DataSet();
|
||||
|
||||
var order = 1;
|
||||
var truck = 1;
|
||||
for (var j = 0; j < 4; j++) {
|
||||
var date = new Date();
|
||||
for (var i = 0; i < count/4; i++) {
|
||||
date.setHours(date.getHours() + 4 * (Math.random() < 0.2));
|
||||
var start = new Date(date);
|
||||
|
||||
date.setHours(date.getHours() + 2 + Math.floor(Math.random()*4));
|
||||
var end = new Date(date);
|
||||
|
||||
items.add({
|
||||
id: order,
|
||||
group: truck,
|
||||
start: start,
|
||||
end: end,
|
||||
content: 'Order ' + order
|
||||
});
|
||||
|
||||
order++;
|
||||
}
|
||||
truck++;
|
||||
}
|
||||
|
||||
// specify options
|
||||
var options = {
|
||||
stack: false,
|
||||
start: new Date(),
|
||||
end: new Date(1000*60*60*24 + (new Date()).valueOf()),
|
||||
editable: true,
|
||||
margin: {
|
||||
item: 10, // minimal margin between items
|
||||
axis: 5 // minimal margin between items and the axis
|
||||
},
|
||||
orientation: 'top'
|
||||
};
|
||||
|
||||
// create a Timeline
|
||||
var container = document.getElementById('mytimeline');
|
||||
timeline = new vis.Timeline(container, null, options);
|
||||
timeline.setGroups(groups);
|
||||
timeline.setItems(items);
|
||||
|
||||
document.getElementById('count').innerHTML = count;
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue
Block a user