The easy way

Type {{include timeline}} in your article, press preview, and follow the link generated. You'll be presented with a ready-to-go template; once this is finished, return to your article, and { {include timeline} } will display your timeline.

Development

Whilst I've tested this template as thoroughly as I can, I suspect it could be further improved. If you find any glitches or areas you wish you could customise, please let me know! VerisimilusT 12:02, 12 June 2007 (UTC)

Template function

This template provides an intuitive, user-friendly and flexible way to insert timelines into articles. It's designed to require the minimum number of variables, and to reside within a table - although a margin can be added.

Why use this template?

The alternative to this template is m:EasyTimeline, using the <template> syntax. EasyTimeline has the following weaknesses:

Pixelated image produced, which looks different and increases page load time

Long set-up time - taking 30 minutes plus even when you know what you're doing

Impenetrable code requiring precise syntax

Difficult to place bars exactly where you want them

Changing minimum dates and sizes requires modification in many places

Everything must be specified - nothing is automatic

It isn't scalable - it doesn't enlarge with text size.

Using the template

Where to use it

Whilst short timelines can be inserted directly into the article, some editors that long, complex timelines break up the flow of the page and make editing difficult. Therefore, you may want to use {{Include timeline}} to host the timeline code on a separate page, which will be automatically included.

Getting started

You can set the switch |help=on in the template to produce some quick pointers.
When you're getting started, you might want to use {{Graphical timeline|help=on}} to generate a ready-made, empty template - or type {{subst:Graphical timeline/blank}} into a sandbox page, save the page, and edit the resulting code. Hopefully, the parameter names are pretty self-explanatory.

What numbers mean

Numeric values are by default in units of em, that is, the height and width of a capital M.

The exception to this is the left and right parameters of a bar, which are set using fractional coordinates. That is to say, the code |bar1-left=0 |bar1-right=0.5 |bar2-left=0.666 |bar3-left=0.5 |bar3-right=0.666 will produce bar1 covering the left half of the area, bar2 covering the right-most third, and bar3 in between them. Further, for operational reasons, the height-units are always used to generate border widths.

Bar borders

Borders appear only on the top and bottom of any given bar. Unfortunately, this cannot be changed - to have a border at the top or bottom only of a bar, you should create a separate bar to overlay the end.

Border style can be set to the CSS standards of solid, dotted, dashed, double, groove, ridge, inset or outset. Width is in the same units as height, and if none is specified 0.1 to 0.2 is a suitable hairline value.

Blank lines

Leaving a parameter blank is NOT the same as not specifying it - it will override the template's default value. Be sure to remove any lines you don't specify.

Considerations

Browsers

Unfortunately, different browsers have different ways of dealing with lines of text that overflow their container - some stretch the container whilst others wrap the text. This means it's probably worth checking your finished timeline in at least IE and firefox if you're making a particularly complex timeline.

Colours

If you're setting colours using html values that look like #e0b539, do consider that some older monitors, and many projectors, cannot display some colours. Sticking to multiples of 33 — e.g. #ff99cc or #03C — ensures maximum compatability, which is often appreciated.

Capacity

If you find that highly-numbered bars, notes or legend entries are not showing up, it could be because the template has not been coded to handle it. There are instructions in the template code for how to add capacity for more bars etc. yourself (it's a simple copy and paste job); if you're not confident doing that, let VerisimilusT know.

Easy editing

If you create a timeline on a subpage, do use the | link-to= parameter. Specify the page name (e.g. Template:My graphical timeline, and "edit" and "history" links will appear.

In use: an example

The code on the left produces the timeline on the right, which is deliberately horrendous in order to demonstrate the limitations of the template. For a working example, I'd recommend looking at Ediacaran biota.

Notes on the example

{{!}} must be used whereever you want a | to appear (e.g. the caption)

If you don't specify when a bar should start or end, it will continue to the edge of the plot

Text should not be too long for the bar

The way that overflowing text wraps is also handled differently in the two borders - it pokes out of the right of the bar on Firefox, but is wrapped within it by IE. Try to manually enter newlines when required rather than relying on browsers to sort it out. Or position a note over the bar - check out note2, which is nudged left over the plot background.