@ -1,61 +0,0 @@ | |||
<!DOCTYPE HTML> | |||
<html> | |||
<head> | |||
<title>Timeline | Background areas</title> | |||
<style> | |||
body, html { | |||
font-family: arial, sans-serif; | |||
font-size: 11pt; | |||
} | |||
.vis.timeline .item.background.negative { | |||
background-color: rgba(255, 0, 0, 0.2); | |||
} | |||
.vis.timeline .item.background.marker { | |||
border-left: 2px solid green; | |||
} | |||
</style> | |||
<script src="../../dist/vis.js"></script> | |||
<link href="../../dist/vis.css" rel="stylesheet" type="text/css" /> | |||
</head> | |||
<body> | |||
<p>This example demonstrates the item type "background", see "Period A" and "Period B". The background areas can be styled with css.</p> | |||
<div id="visualization"></div> | |||
<script> | |||
// create a dataset with items | |||
// we specify the type of the fields `start` and `end` here to be strings | |||
// containing an ISO date. The fields will be outputted as ISO dates | |||
// automatically getting data from the DataSet via items.get(). | |||
var items = new vis.DataSet({ | |||
type: { start: 'ISODate', end: 'ISODate' } | |||
}); | |||
// add items to the DataSet | |||
items.add([ | |||
{id: 'A', content: 'Period A', start: '2014-01-16', end: '2014-01-22', type: 'background'}, | |||
{id: 'B', content: 'Period B', start: '2014-01-25', end: '2014-01-30', type: 'background', className: 'negative'}, | |||
{id: 1, content: 'item 1<br>start', start: '2014-01-23'}, | |||
{id: 2, content: 'item 2', start: '2014-01-18'}, | |||
{id: 3, content: 'item 3', start: '2014-01-21'}, | |||
{id: 4, content: 'item 4', start: '2014-01-19', end: '2014-01-24'}, | |||
{id: 5, content: 'item 5', start: '2014-01-28', type:'point'}, | |||
{id: 6, content: 'item 6', start: '2014-01-26'} | |||
]); | |||
var container = document.getElementById('visualization'); | |||
var options = { | |||
start: '2014-01-10', | |||
end: '2014-02-10', | |||
editable: true | |||
}; | |||
var timeline = new vis.Timeline(container, items, options); | |||
</script> | |||
</body> | |||
</html> |
@ -1,250 +0,0 @@ | |||
<!DOCTYPE HTML> | |||
<html> | |||
<head> | |||
<title>Timeline | Templates</title> | |||
<!-- load handlebars for templating, and create a template --> | |||
<script src="http://cdnjs.cloudflare.com/ajax/libs/handlebars.js/2.0.0-alpha.4/handlebars.min.js"></script> | |||
<script id="item-template" type="text/x-handlebars-template"> | |||
<table class="score"> | |||
<tr> | |||
<td colspan="3" class="description">{{description}}</td> | |||
</tr> | |||
<tr> | |||
<td>{{player1}}</td> | |||
<th>{{score1}} - {{score2}}</th> | |||
<td>{{player2}}</td> | |||
</tr> | |||
<tr> | |||
<td><img src="http://flagpedia.net/data/flags/mini/{{abbr1}}.png" width="31" height="20" alt="{{abbr1}}"></td> | |||
<th></th> | |||
<td><img src="http://flagpedia.net/data/flags/mini/{{abbr2}}.png" width="31" height="20" alt="{{abbr2}}"></td> | |||
</tr> | |||
</table> | |||
</script> | |||
<script src="../../dist/vis.js"></script> | |||
<link href="../../dist/vis.css" rel="stylesheet" type="text/css" /> | |||
<style type="text/css"> | |||
body, html { | |||
font-family: sans-serif; | |||
font-size: 10pt; | |||
} | |||
.vis.timeline .item { | |||
border-color: #acacac; | |||
background-color: #efefef; | |||
box-shadow: 5px 5px 10px rgba(128,128,128, 0.3); | |||
} | |||
table .description { | |||
font-style: italic; | |||
} | |||
#visualization { | |||
position: relative; | |||
overflow: hidden; | |||
} | |||
.logo { | |||
position: absolute; | |||
right: 10px; | |||
top: 10px; | |||
} | |||
.logo img { | |||
width: 120px; | |||
} | |||
</style> | |||
</head> | |||
<body> | |||
<h1>WK 2014</h1> | |||
<p style="max-width: 600px;"> | |||
This example demonstrates using templates to format item contents. In this case <a href="http://handlebarsjs.com">handlebars</a> is used as template engine, but you can just use your favorite template engine or manually craft HTML from the data of an item. | |||
</p> | |||
<div id="visualization"> | |||
<div class="logo"><img src="http://upload.wikimedia.org/wikipedia/en/e/e8/WC-2014-Brasil.svg"></div> | |||
</div> | |||
<script type="text/javascript"> | |||
// create a handlebars template | |||
var source = document.getElementById('item-template').innerHTML; | |||
var template = Handlebars.compile(document.getElementById('item-template').innerHTML); | |||
// DOM element where the Timeline will be attached | |||
var container = document.getElementById('visualization'); | |||
// Create a DataSet (allows two way data-binding) | |||
var items = new vis.DataSet([ | |||
// round of 16 | |||
{ | |||
player1: 'Brazil', | |||
abbr1: 'br', | |||
score1: '1 (3)', | |||
player2: 'Chile', | |||
abbr2: 'cl', | |||
score2: '1 (2)', | |||
description: 'round of 16', | |||
start: '2014-06-28 13:00' | |||
}, | |||
{ | |||
player1: 'Colombia', | |||
abbr1: 'co', | |||
score1: 2, | |||
player2: 'Uruguay', | |||
abbr2: 'uy', | |||
score2: 0, | |||
description: 'round of 16', | |||
start: '2014-06-28 17:00' | |||
}, | |||
{ | |||
player1: 'Netherlands', | |||
abbr1: 'nl', | |||
score1: 2, | |||
player2: 'Mexico', | |||
abbr2: 'mx', | |||
score2: 1, | |||
description: 'round of 16', | |||
start: '2014-06-29 13:00' | |||
}, | |||
{ | |||
player1: 'Costa Rica', | |||
abbr1: 'cr', | |||
score1: '1 (5)', | |||
player2: 'Greece', | |||
abbr2: 'gr', | |||
score2: '1 (3)', | |||
description: 'round of 16', | |||
start: '2014-06-29 17:00' | |||
}, | |||
{ | |||
player1: 'France', | |||
abbr1: 'fr', | |||
score1: 2, | |||
player2: 'Nigeria', | |||
abbr2: 'ng', | |||
score2: 0, | |||
description: 'round of 16', | |||
start: '2014-06-30 13:00' | |||
}, | |||
{ | |||
player1: 'Germany', | |||
abbr1: 'de', | |||
score1: 2, | |||
player2: 'Algeria', | |||
abbr2: 'dz', | |||
score2: 1, | |||
description: 'round of 16', | |||
start: '2014-06-30 17:00' | |||
}, | |||
{ | |||
player1: 'Argentina', | |||
abbr1: 'ar', | |||
score1: 1, | |||
player2: 'Switzerland', | |||
abbr2: 'ch', | |||
score2: 0, | |||
description: 'round of 16', | |||
start: '2014-07-01 13:00' | |||
}, | |||
{ | |||
player1: 'Belgium', | |||
abbr1: 'be', | |||
score1: 2, | |||
player2: 'USA', | |||
abbr2: 'us', | |||
score2: 1, | |||
description: 'round of 16', | |||
start: '2014-07-01 17:00' | |||
}, | |||
// quarter-finals | |||
{ | |||
player1: 'France', | |||
abbr1: 'fr', | |||
score1: 0, | |||
player2: 'Germany', | |||
abbr2: 'de', | |||
score2: 1, | |||
description: 'quarter-finals', | |||
start: '2014-07-04 13:00' | |||
}, | |||
{ | |||
player1: 'Brazil', | |||
abbr1: 'br', | |||
score1: 2, | |||
player2: 'Colombia', | |||
abbr2: 'co', | |||
score2: 1, | |||
description: 'quarter-finals', | |||
start: '2014-07-04 17:00' | |||
}, | |||
{ | |||
player1: 'Argentina', | |||
abbr1: 'ar', | |||
score1: 1, | |||
player2: 'Belgium', | |||
abbr2: 'be', | |||
score2: 0, | |||
description: 'quarter-finals', | |||
start: '2014-07-05 13:00' | |||
}, | |||
{ | |||
player1: 'Netherlands', | |||
abbr1: 'nl', | |||
score1: '0 (4)', | |||
player2: 'Costa Rica', | |||
abbr2: 'cr', | |||
score2: '0 (3)', | |||
description: 'quarter-finals', | |||
start: '2014-07-05 17:00' | |||
}, | |||
// semi-finals | |||
{ | |||
player1: 'Brazil', | |||
abbr1: 'br', | |||
score1: 1, | |||
player2: 'Germany', | |||
abbr2: 'de', | |||
score2: 7, | |||
description: 'semi-finals', | |||
start: '2014-07-08 17:00' | |||
}, | |||
{ | |||
player1: 'Netherlands', | |||
abbr1: 'nl', | |||
score1: '0 (2)', | |||
player2: 'Argentina', | |||
abbr2: 'ar', | |||
score2: '0 (4)', | |||
description: 'semi-finals', | |||
start: '2014-07-09 17:00' | |||
}, | |||
// final | |||
{ | |||
player1: 'Germany', | |||
score1: 1, | |||
abbr1: 'de', | |||
player2: 'Argentina', | |||
abbr2: 'ar', | |||
score2: 0, | |||
description: 'final', | |||
start: '2014-07-13 16:00' | |||
} | |||
]); | |||
// Configuration for the Timeline | |||
var options = { | |||
// specify a template for the items | |||
template: template | |||
}; | |||
// Create a Timeline | |||
var timeline = new vis.Timeline(container, items, options); | |||
</script> | |||
</body> | |||
</html> |