updated removed
[home-automation.git] / RGraph / docs / gantt.html
1 <?php ob_start('ob_gzhandler') ?>
2 <!DOCTYPE html>
3 <html>
4 <head>
5     <meta http-equiv="X-UA-Compatible" content="chrome=1">
6     <!--
7         /**
8         * o------------------------------------------------------------------------------o
9         * | This file is part of the RGraph package - you can learn more at:             |
10         * |                                                                              |
11         * |                          http://www.rgraph.net                               |
12         * |                                                                              |
13         * | This package is licensed under the RGraph license. For all kinds of business |
14         * | purposes there is a small one-time licensing fee to pay and for non          |
15         * | commercial  purposes it is free to use. You can read the full license here:  |
16         * |                                                                              |
17         * |                      http://www.rgraph.net/LICENSE.txt                       |
18         * o------------------------------------------------------------------------------o
19         */
20     -->
21     <title>RGraph: HTML5 canvas graph library - gantt chart documentation</title>
22     
23     <meta name="keywords" content="rgraph html5 canvas graph docs gantt chart" />
24     <meta name="description" content="RGraph: HTML5 canvas graph software - Documentation about the Gantt chart" />
25
26     <link rel="stylesheet" href="../css/website.css" type="text/css" media="screen" />
27     <link rel="icon" type="image/png" href="../images/favicon.png">
28 </head>
29 <body>
30
31     <!-- Social networking buttons -->
32     <script src="../libraries/RGraph.common.core.js" ></script>
33     
34     <script>
35         function HideTwitterDIV ()
36         {
37             document.getElementById("twitter_div").style.opacity = 0;
38             document.getElementById("twitter_div").style.display = 'none';
39         }
40
41
42         function ShowTwitterDIV (e)
43         {
44             var e   = RGraph.FixEventObject(document.all ? event : e);
45             var div = document.getElementById("twitter_div");
46             var img = document.getElementById("twitter_icon");
47
48             div.style.display = 'block';
49             div.style.left    = (RGraph.getCanvasXY(img)[0] + img.offsetWidth - div.offsetWidth + 110) + 'px';
50             div.style.top     = (RGraph.getCanvasXY(img)[1] - 1) + 'px';
51
52             /**
53             * Fade it in
54             */
55             setTimeout('document.getElementById("twitter_div").style.opacity = 0.2;', 25);
56             setTimeout('document.getElementById("twitter_div").style.opacity = 0.4;', 50);
57             setTimeout('document.getElementById("twitter_div").style.opacity = 0.6;', 100);
58             setTimeout('document.getElementById("twitter_div").style.opacity = 0.8;', 125);
59             setTimeout('document.getElementById("twitter_div").style.opacity = 1.0;', 150);
60
61             e.stopPropagation();
62
63             return false;
64         }
65
66         /**
67         * This code installs the event handler that hides the Twitter DIV
68         */
69         if (RGraph.isIE8()) {
70              window.attachEvent('onload', function () {document.body.attachEvent('onclick', HideTwitterDIV);});
71         } else {
72             window.addEventListener('click', HideTwitterDIV, false);
73         }
74     </script>
75
76     <!-- The twitter DIV --> 
77     <div id="twitter_div" style="position: absolute;top: 0;left: 0;background-color: #eee;border: 2px dashed black;box-shadow: 0 0 15px #aaa;-moz-box-shadow: 0 0 15px #aaa;-webkit-box-shadow: 0 0 15px #aaa;padding: 3px;display: none;opacity: 0;z-index: 99;"> 
78         <a href="http://twitter.com/home/?status=RGraph%3A+HTML5+canvas+graph+library+based+on+the+HTML5+canvas+tag+http%3A%2F%2Fwww.rgraph.net+%23rgraph+%23html5+%23canvas" target="_blank" title="Share on Twitter" rel="nofollow" style="text-decoration: none">Tweet&nbsp;about&nbsp;RGraph</a><br>
79         <a href="http://twitter.com/_rgraph" style="text-decoration: none" rel="nofollow" target="_blank">Follow for HTML5 news</a> 
80     </div>
81
82     <div id="social_icons" class="warning" style="top: 0; left: 5px; position: absolute">
83         <script>
84             // Opera fix
85             if (navigator.userAgent.indexOf('Opera') == -1) {
86               document.getElementById("social_icons").style.position = 'fixed';
87               document.getElementById("twitter_div").style.position = 'fixed';
88     
89             }
90         </script>
91     
92         <b style="display: inline-block; position: relative; top: 1px">Bookmark and share:</b>
93     
94     
95             <div id="social">
96                 <a title="Bookmark with delicious" href="http://delicious.com/save?jump=close&v=4&noui&jump=close&url=http://www.rgraph.net&notes=RGraph%20is%20a%20HTML5%20based%20graph%20library%20supporting%20a%20wide%20range%20of%20different%20graph%20types:Bar,%20Bipolar,%20Donut,%20Funnel,%20Gantt,%20Horizontal%20Bar,%20LED,%20Line,%20Meter,%20Odometer,%20Pie,%20Progress%20Bar,%20Rose,%20RScatter,%20Scatter%20and%20Traditional%20Radar&title=RGraph:%20HTML5%20canvas%20graph%20library%20based%20on%20the%20HTML5%20canvas%20tag" target="_blank">
97                     <img src="../images/delicious.png" alt="Bookmark with delicious" width="22" height="22" border="0" align="absmiddle" /> 
98                 </a> 
99      
100                 <a href="" target="_blank" onmouseover="if (document.getElementById('twitter_div').style.display == 'none') ShowTwitterDIV(event);" onclick="event.stopPropagation(); event.cancelBubble = true; return false">
101                     <img src="../images/twitter.png" id="twitter_icon" alt="tweet this site" width="22" height="22" border="0" align="absmiddle" />
102                 </a>
103     
104     
105 <!--
106                 <a title="Post to Google Buzz!" href="" onclick="window.open('http://www.google.com/buzz/post?url=http://www.rgraph.net&imageurl=http://www.rgraph.net/images/logo.png', 'google_buzz_window', 'width=800,height=400,top=100,left=100'); return false">
107                     <img src="../images/buzz.png" width="22" height="22" alt="Post to Google Buzz!" align="absmiddle" style="position: relative; top: -2px; border: 0" border="0"/>
108                 </a>
109     
110     
111                 <a title="Share RGraph on Facebook" href="" onclick="window.open('http://www.facebook.com/sharer.php?u=http://www.rgraph.net&t=RGraph:%20HTML5%20canvas%20graph%20library', 'facebook_window', 'width=500,height=300,top=100,left=100'); return false">
112                     <img src="../images/facebook.png" width="22" height="22" alt="Post to Facebook" align="absmiddle" style="position: relative; top: -2px; border: 0" border="0"/>
113                 </a>
114     
115                 <a href="mailto:share@friendfeed.com" title="Share on FriendFeed"> 
116                     <img src="../images/friendfeed.png" width="22" height="22" alt="Share on FriendFeed" border="0" align="absmiddle" /> 
117                 </a>
118     
119                 <a href="http://www.stumbleupon.com/submit?url=http://www.rgraph.net" target="_blank" title="Share on StumbleUpon" >
120                     <img src="../images/stumble.png" alt="Stumble! this site" width="22" height="22" border="0" align="absmiddle" /> 
121                 </a>
122 -->
123             </div>
124     </div>
125     <!-- /Social networking buttons -->
126
127     <div id="breadcrumb">
128         <a href="../index.html">RGraph: HTML5 canvas graph library</a>
129         >
130         <a href="index.html">Documentation</a>
131         >
132         Gantt chart
133     </div>
134
135     <h1>RGraph: HTML5 canvas graph library - Gantt chart documentation</h1>
136
137     <script>
138         if (RGraph.isIE8()) {
139             document.write('<div style="background-color: #fee; border: 2px dashed red; padding: 5px"><b>Important</b><br /><br /> Internet Explorer 8 does not natively support the HTML5 canvas tag, so if you want to see the graphs, you can either:<ul><li>Install <a href="http://code.google.com/chrome/chromeframe/">Google Chrome Frame</a></li><li>Use ExCanvas. This is provided in the RGraph Archive.</li><li>Use another browser entirely. Your choices are Firefox 3.5+, Chrome 2+, Safari 4+ or Opera 10.5+. </li></ul> <b>Note:</b> Internet Explorer 9 fully supports the canvas tag. Click <a href="http://groups.google.com/group/rgraph/browse_thread/thread/c5651ff8c56b8f3c#" target="_blank">here</a> to see some screenshots.</div>');
140         }
141     </script>
142
143     <p>
144         The Gantt chart can be used to easily represent schedules, making visualising this information far more straightfoward.
145     </p>
146
147     <ul>
148         <li><a href="#events">Adding events to your Gantt chart</a></li>
149         <li><a href="#vbars">Adding vertical bars to your Gantt chart</a></li>
150     </ul>
151
152     <h2>Example</h2>
153     
154     <p> 
155         The example file is <a href="../examples/gantt.html">here</a>.
156     </p> 
157     
158     <pre class="code">
159 &lt;script&gt;
160     window.onload = function ()
161     {
162         var gantt = new RGraph.Gantt('gantt');
163         gantt.Set('chart.xmax', 365);
164         gantt.Set('chart.gutter', 35);
165         gantt.Set('chart.labels', ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']);
166         gantt.Set('chart.title', 'Holiday schedule for Xyz Ltd');
167         gantt.Set('chart.defaultcolor', 'rgba(255,0,0,1)');
168         gantt.Set('chart.tooltips', ["&lt;b&gt;Richard&lt;/b&gt;&lt;br /&gt;Richard is going on holiday to Malta.&lt;br /&gt;He'll be away for 28 days.",
169                                      "&lt;b&gt;Fred&lt;/b&gt;&lt;br /&gt;Fred is also going away for 28 days",
170                                      "&lt;b&gt;Barney&lt;/b&gt;&lt;br /&gt;Barney is off work for two weeks",
171                                      "&lt;b&gt;Gloria&lt;/b&gt;&lt;br /&gt;Gloria is off for 3 weeks",
172                                      "&lt;b&gt;Paul&lt;/b&gt;&lt;br /&gt; Away for 31 days",
173                                      "&lt;b&gt;Harry&lt;/b&gt;&lt;br /&gt;Away for three weeks",
174                                      "&lt;b&gt;Shane&lt;/b&gt;&lt;br /&gt;Away for one week",
175                                      "&lt;b&gt;Barry&lt;/b&gt;&lt;br /&gt;Away for two weeks",
176                                      "&lt;b&gt;Cynthia&lt;/b&gt;&lt;br /&gt;Away for two weeks",
177                                      "&lt;b&gt;Graham&lt;/b&gt;&lt;br /&gt;Away for August and September",
178                                      "&lt;b&gt;Paul&lt;/b&gt;&lt;br /&gt;Away for 31 days"]);
179         gantt.Set('chart.events'[
180                                  [31, 28, null, 'Richard'],
181                                  [31, 28, null, 'Fred'],
182                                  [59, 14, null, 'Barney'],
183                                  [59, 21, null, 'Gloria'],
184                                  [59, 31, null, 'Paul'],
185                                  [80, 21, null, 'Harry'],
186                                  [94, 7, null, 'Shane'],
187                                  [120, 14, null, 'Barry'],
188                                  [130, 14, null, 'Cynthia'],
189                                  [211, 61, null, 'Graham'],
190                                  [334, 31, null, 'Paul'],
191                                 ]);
192         gantt.Set('chart.vbars', [
193                                   [0, 31, 'rgba(192,255,192,0.5)'],
194                                   [59, 31, 'rgba(192,255,192,0.5)'],
195                                   [120, 31, 'rgba(192,255,192,0.5)'],
196                                   [181, 31, 'rgba(192,255,192,0.5)'],
197                                   [243, 30, 'rgba(192,255,192,0.5)'],
198                                   [304, 30, 'rgba(192,255,192,0.5)'],
199                                  ]);
200     
201         gantt.Draw();
202     }
203 &lt;/script&gt;
204 </pre>
205
206     <h2>Properties</h2>
207     
208     <p>
209         You can use these properties to control how the bar graph apears.
210     </p>
211
212     <ul>
213         <li><a href="#chart configuration">Chart configuration</a></li>
214         <li><a href="#background">Background</a></li>
215         <li><a href="#margins">Margins</a></li>
216         <li><a href="#labels and text">Labels and text</a></li>
217         <li><a href="#titles">Titles</a></li>
218         <li><a href="#interactive features">Interactive features</a></li>
219         <li><a href="#zoom">Zoom</a></li>
220         <li><a href="#miscellaneous">Miscellaneous</a></li>
221     </ul>
222
223
224
225     <a name="chart configuration"></a>
226         <h3 style="border: 1px solid #aaa; background-color: #eee; font-style: italic; padding: 5px; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px">Chart configuration</h3>
227         <a name="chart.xmax"></a>
228         <b>chart.xmax</b><br />
229         Required. This determines how many "units" wide the Gantt chart is. For example to represent a year, you would use 365, giving
230         a granularity of one day.<br />
231         <i>Default: none</i><br /><br />
232
233         <a name="chart.xmin"></a>
234         <b>chart.xmin</b><br />
235         This option can sometimes make using a Gantt chart spread over several pages easier.<br />
236         <i>Default: 0</i><br /><br />
237
238
239 <a name="background"></a>
240 <h3 style="border: 1px solid #aaa; background-color: #eee; font-style: italic; padding: 5px; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px">Background</h3>            <a name="chart.background.barcolor1"></a>
241 <b>chart.background.barcolor1</b><br />
242             Color of the background bars<br /><i>Default: white</i><br /><br />
243             <a name="chart.background.barcolor2"></a>
244 <b>chart.background.barcolor2</b><br />
245             Color of the background bars<br /><i>Default: white</i><br /><br />
246             <a name="chart.background.grid"></a>
247 <b>chart.background.grid</b><br />
248             Whether a grid is shown as part of the background<br /><i>Default: true</i><br /><br />
249             <a name="chart.background.grid.color"></a>
250 <b>chart.background.grid.color</b><br />
251             The color of the background grid.<br /><i>Default: #eee</i><br /><br />
252             <a name="chart.background.grid.hsize"></a>
253 <b>chart.background.grid.hsize</b><br />
254             The size of the horizontal grid.<br /><i>Default: 20</i><br /><br />
255             <a name="chart.background.grid.vsize"></a>
256 <b>chart.background.grid.vsize</b><br />
257             The size of the vertical grid.<br /><i>Default: 20</i><br /><br />
258             <a name="chart.background.grid.width"></a>
259 <b>chart.background.grid.width</b><br />
260             The line width of the background grid.<br /><i>Default: 1</i><br /><br />
261             <a name="chart.background.grid.autofit"></a>
262 <b>chart.background.grid.autofit</b><br />
263             Instead of specifying a pixel width/height for the background grid, you can use autofit and specify how many horizontal and vertical lines you want.<br /><i>Default: false</i><br /><br />
264             <a name="chart.background.grid.autofit.numhlines"></a>
265 <b>chart.background.grid.autofit.numhlines</b><br />
266             When using autofit this allows you to specify how many horizontal grid lines you want. <br /><i>Default: 7</i><br /><br />
267             <a name="chart.background.grid.autofit.numvlines"></a>
268 <b>chart.background.grid.autofit.numvlines</b><br />
269             When using autofit this allows you to specify how many vertical grid lines you want. <br /><i>Default: 20</i><br /><br />
270 <a name="margins"></a>
271 <h3 style="border: 1px solid #aaa; background-color: #eee; font-style: italic; padding: 5px; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px">Margins</h3>            <a name="chart.gutter"></a>
272 <b>chart.gutter</b><br />
273             How big the gutter is. This is the top, bottom and right gutters. The left gutter is three times the gutter wide, to accomodate the labels.<br /><i>Default: 25</i><br /><br />
274 <a name="labels and text"></a>
275 <h3 style="border: 1px solid #aaa; background-color: #eee; font-style: italic; padding: 5px; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px">Labels and text</h3>            <a name="chart.text.size"></a>
276 <b>chart.text.size</b><br />
277             The size of the text (in points).<br /><i>Default: 10</i><br /><br />
278             <a name="chart.text.font"></a>
279 <b>chart.text.font</b><br />
280             The font used to render the text.<br /><i>Default: Verdana</i><br /><br />
281             <a name="chart.text.color"></a>
282 <b>chart.text.color</b><br />
283             The color of the labels. <br /><i>Default: black</i><br /><br />
284             <a name="chart.labels"></a>
285 <b>chart.labels</b><br />
286             An array of the labels which are applied to the chart.<br /><i>Default: [] (An empty array)</i><br /><br />
287 <a name="titles"></a>
288 <h3 style="border: 1px solid #aaa; background-color: #eee; font-style: italic; padding: 5px; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px">Titles</h3>            <a name="chart.title"></a>
289 <b>chart.title</b><br />
290             The title of the chart.<br /><i>Default: not set</i><br /><br />
291
292 <a name="chart.title.background"></a>
293 <b>chart.title.background</b><br />
294 The background color (if any) for the title.<br />
295 <i>Default: null</i><br /><br />
296
297             <a name="chart.title.color"></a>
298 <b>chart.title.color</b><br />
299             The color of the title.<br /> <i>Default: black</i><br /><br />
300             <a name="chart.title.hpos"></a>
301 <b>chart.title.hpos</b><br />
302             This allows you to completely override the horizontal positioning of the title. It should be a number between 0 and 1, and is multiplied with the whole width of the canvas and then used as the horizontal position. <br /><i>Default: null</i><br /><br />
303             <a name="chart.title.vpos"></a>
304 <b>chart.title.vpos</b><br />
305             This allows you to completely override the vertical positioning of the title. It should be a number between 0 and 1, and is multiplied with the gutter and then used as the vertical position. It can be useful if you need to have a large gutter.<br /><i>Default: null</i><br /><br />
306 <a name="interactive features"></a>
307 <h3 style="border: 1px solid #aaa; background-color: #eee; font-style: italic; padding: 5px; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px">Interactive features</h3>            <a name="chart.tooltips"></a>
308 <b>chart.tooltips</b><br />
309             An array of tooltips that are shown when the bars are clicked. They can contain HTML.<br /><i>Default: [] (An empty array)</i><br /><br />
310             <a name="chart.tooltips.effect"></a>
311 <b>chart.tooltips.effect</b><br />
312             The animated effect used for showing tooltips. Can be either <i>fade</i> or <i>expand</i>.<br /><i>Default: fade</i><br /><br />
313             <a name="chart.tooltips.css.class"></a>
314 <b>chart.tooltips.css.class</b><br />
315             This is the name of the CSS class the graph uses.<br /><i>Default: RGraph_tooltip</i><br /><br />
316             <a name="chart.tooltips.override"></a>
317 <b>chart.tooltips.override</b><br />
318             If you wish to handle showing tooltips yourself, this should be a function object which does just that. There's more information on the <a href="tooltips.html">tooltips documentation page</a><br /><i>Default: null</i><br /><br />
319             <a name="chart.contextmenu"></a>
320 <b>chart.contextmenu</b><br />
321             An array of context menu items. Cannot be used in conjunction with tooltips.<br /><i>Default: [] (An empty array)</i><br /><br />
322             <a name="chart.annotatable"></a>
323 <b>chart.annotatable</b><br />
324             Whether annotations are enabled for the chart (ie you can draw on the chart interactively.<br /><i>Default: false</i><br /><br />
325             <a name="chart.annotate.color"></a>
326 <b>chart.annotate.color</b><br />
327             If you do not allow the use of the palette, then this will be the only colour allowed for annotations.<br /><i>Default: black</i><br /><br />
328             <a name="chart.resizable"></a>
329 <b>chart.resizable</b><br />
330             Defaulting to false, this determines whether your graph will be resizable. Because of the numerous event handlers this has to install code on, This feature is unlikely to work with other dynamic features (the context menu is fine however).<br /><i>Default: false</i><br /><br />
331 <a name="zoom"></a>
332 <h3 style="border: 1px solid #aaa; background-color: #eee; font-style: italic; padding: 5px; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px">Zoom</h3>            <a name="chart.zoom.mode"></a>
333 <b>chart.zoom.mode</b><br />
334             Can be used to control whether the zoom is in thumbnail or canvas mode. Possible values are: <i>thumbnail</i> and <i>canvas</i>.<br /><i>Default: canvas</i><br /><br />
335             <a name="chart.zoom.factor"></a>
336 <b>chart.zoom.factor</b><br />
337             This is the factor that the graph will be zoomed by (bigger values means more zoom)<br /><i>Default: 1.5</i><br /><br />
338             <a name="chart.zoom.fade.in"></a>
339 <b>chart.zoom.fade.in</b><br />
340             Whether the zoomed canvas fades in or not. This also can be used to control the fade in for the zoom in thumbnail mode.<br /><i>Default: true</i><br /><br />
341             <a name="chart.zoom.fade.out"></a>
342 <b>chart.zoom.fade.out</b><br />
343             Whether the zoomed canvas fades out or not. This also can be used to control the fade in for the zoom in thumbnail mode.<br /><i>Default: true</i><br /><br />
344             <a name="chart.zoom.hdir"></a>
345 <b>chart.zoom.hdir</b><br />
346             The horizontal direction of the zoom. Possible values are: <i>left</i>, <i>center</i>, <i>right</i><br /><i>Default: right</i><br /><br />
347             <a name="chart.zoom.vdir"></a>
348 <b>chart.zoom.vdir</b><br />
349             The vertical direction of the zoom. Possible values are: <i>up</i>, <i>center</i>, <i>down</i><br /><i>Default: down</i><br /><br />
350             <a name="chart.zoom.delay"></a>
351 <b>chart.zoom.delay</b><br />
352             The delay (in milliseconds) between frames.<br /><i>Default: 50</i><br /><br />
353             <a name="chart.zoom.frames"></a>
354 <b>chart.zoom.frames</b><br />
355             The number of frames in the zoom animation.<br /><i>Default: 10</i><br /><br />
356             <a name="chart.zoom.shadow"></a>
357 <b>chart.zoom.shadow</b><br />
358             Whether or not the zoomed canvas has a shadow or not.<br /><i>Default: true</i><br /><br />
359             <a name="chart.zoom.thumbnail.width"></a>
360 <b>chart.zoom.thumbnail.width</b><br />
361             When the zoom is in thumbnail mode, this is the width (in pixels) of the thumbnail.<br /><i>Default: 75</i><br /><br />
362             <a name="chart.zoom.thumbnail.height"></a>
363 <b>chart.zoom.thumbnail.height</b><br />
364             When the zoom is in thumbnail mode, this is the height (in pixels) of the thumbnail.<br /><i>Default: 75</i><br /><br />
365             <a name="chart.zoom.background"></a>
366 <b>chart.zoom.background</b><br />
367             Defaulting to true, this determines whether the zoom has a dark, semi-opaque background that covers the entire web page.<br /><i>Default: true</i><br /><br />
368 <a name="miscellaneous"></a>
369 <h3 style="border: 1px solid #aaa; background-color: #eee; font-style: italic; padding: 5px; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px">Miscellaneous</h3>            <a name="chart.borders"></a>
370 <b>chart.borders</b><br />
371             Whether a border is shown on the event bars<br /><i>Default: true</i><br /><br />
372             <a name="chart.defaultcolor"></a>
373 <b>chart.defaultcolor</b><br />
374             The default color of bars. If you don't specify a color for the event, this will be used.<br /><i>Default: white</i><br /><br />
375             <a name="chart.events"></a>
376 <b>chart.events</b><br />
377             An array of event information that is displayed on the gantt. See below for further information.<br /><i>Default: [] (An empty array)</i><br /><br />
378             <a name="chart.vbars"></a>
379 <b>chart.vbars</b><br />
380             Vertical bars used for decorative purposes, or for marking something on the chart (an event for example). See below for further information.<br /><i>Default: [] (An empty array)</i><br /><br />
381 </div><!-- /DOCS --><br /><br />
382
383     <a name="events"></a>
384     <h2>Adding events to your Gantt chart</h2>
385     
386     <p>
387         To add events, you specify them using the <i>chart.events</i> property. You could use the following to set some events on your gantt chart:
388     </p>
389     
390     <pre class="code">gantt.Set('chart.events', [
391                        [31, 28, 75, 'Richard'],
392                        [12, 28, 67, 'Fred'],
393                        [59, 14, 0, 'Barney'],
394                        [59, 21, 5, 'Gloria'],
395                        [46, 31, 94, 'Paul'],
396                        [80, 21, 46, 'Harry'],
397                        [94, 17, 84, 'Shane'],
398                        [34, 14, 32, 'Barry'],
399                        [64, 14, 28, 'Cynthia', 'red', 'yellow'],
400                        [13, 61, 74, 'Graham'],
401                        [84, 31, 16, 'Paul']
402                       ]);
403 </pre>
404
405     <p>
406         The first value is the (zero indexed) start number relative to your <i>chart.xmax</i>. So if you have set your <i>chart.xmax</i> to 62, (to represent
407         two months), and this value is 31, the start will be the start of the second month. In this case you could give two labels -
408         <i>['July', 'August']</i>.
409     </p>
410     
411     <p>
412         The second value is the duration. So using the previous example, if you set this to 7, you would have an event lasting a week.
413     </p>
414     
415     <p>
416         The third value is the "percentage complete" indicator. This is shown to the right of the event, and is optional - you can
417         specify <i>null</i> if you wish.
418     </p>
419     
420     <p>
421         The fourth value is the label that is used on the left hand side.
422     </p>
423     
424     <p>
425         The optional fifth value stipulates the background colour that the bar is. Default is white.
426     </p>
427     
428     <p>
429         And the last optional 6th value is the foreground color of the bar. Defaulting to #0c0.
430     </p>
431     
432     <a name="vbars"></a>
433     <h2>Adding vertical bars to your Gantt chart</h2>
434     
435     <p>
436         You can add decorative vertical bars like so:
437     </p>
438     
439     <pre class="code">gantt.Set('chart.vbars', [
440                     [0, 31, 'rgba(192,255,192,0.5)'],
441                     [59, 31, 'rgba(192,255,192,0.5)'],
442                     [120, 31, 'rgba(192,255,192,0.5)'],
443                     [181, 31, 'rgba(192,255,192,0.5)'],
444                     [243, 30, 'rgba(192,255,192,0.5)'],
445                     [304, 30, 'rgba(192,255,192,0.5)'],
446                    ]);
447 </pre>
448
449     <p>
450         You can use these for decorative purposes, or to mark events/limits. The first value is the start index, as above.
451         The second value is the unit length, again as above. The third value is the color of the vertical bar.
452     </p>
453
454 </body>
455 </html>