HTMLcopy
1
<div id="container"></div>
CSScopy
6
1
html, body, #container {
2
width: 100%;
3
height: 100%;
4
margin: 0;
5
padding: 0;
6
}
JavaScriptcopy
x
1
anychart.onDocumentReady(function () {
2
3
// create a chart
4
var chart = anychart.bar();
5
6
// setting chart title
7
chart.title("X113 Destroyer Development Plan");
8
9
// setting y scale type as dateTime and adjusting minimum and maximum values
10
var dateScale = anychart.scales.dateTime();
11
var dateTicks = dateScale.ticks();
12
dateTicks.interval(1);
13
var dateMinorTicks = dateScale.minorTicks();
14
dateMinorTicks.interval(0, 2);
15
chart.yScale(dateScale);
16
17
// enable minor ticks
18
var minorTicks = chart.yAxis().minorTicks();
19
minorTicks.enabled(true);
20
21
// setting data
22
var series = chart.rangeBar([
23
{x: "Development", low: Date.UTC(2000, 01, 01), high: Date.UTC(2002, 02, 15)},
24
{x: "Internal Testing", low: Date.UTC(2001, 06, 01), high: Date.UTC(2003, 07, 01), fill: "#1976D2"},
25
{x: "Field Tests", low: Date.UTC(2002, 02, 25), high: Date.UTC(2003, 07, 01), fill: "#EF6C00"},
26
{x: "Licensing", low: Date.UTC(2003, 07, 01), high: Date.UTC(2004, 07, 01), fill: "#FFD54F"}
27
]);
28
series.tooltip(false);
29
series.stroke(null);
30
31
// adjusting labels for dateTime scale. Otherwise it would be the number of milliseconds between the date and midnight January 1 1970
32
var xLabels = chart.yAxis().labels();
33
xLabels.format(function(value) {
34
var date = new Date(value["tickValue"]);
35
var options = {year: "numeric"};
36
return date.toLocaleDateString("en-US", options);
37
});
38
39
// setting axes titles and position
40
var yAxis = chart.yAxis();
41
yAxis.orientation("top");
42
yAxis.title("Time Plan");
43
var xAxis = chart.xAxis();
44
xAxis.title("Tasks");
45
46
// set container and draw chart
47
chart.container("container");
48
chart.draw();
49
});