Extension:EasyTimeline

As the saying goes: a picture often tells more than a thousand words. This is certainly true for graphical timelines. A detailed listing of events and dates in tabular form may offer the reader a lot of specifics, but may fail to provide an overview, a grand perspective.

From March 2004 there is wiki way to compose graphical time charts offline. A user writes an input script, runs EasyTimeline to generate the chart and uploads chart and script to Wikipedia. Someone else can download and modify the script, generate a new version of the chart, and upload the new chart and script back to Wikipedia.

See my project site for details.

EasyTimeline will be incorporated in WikiMedia in next major upgrade, currently on test at test.wikipedia.org.

Charts examples
Two simple examples of what is possible. For a much more extensive example (admittedly very crowded) see World War II - Asian Theatre.

Code example
Just to show you that the script syntax is reasonably intuitive: here is the script for the image to the left: Soviet Leaders.


 * 1) All measures all in pixels

ImageSize = width:160 height:550 PlotArea  = width: 25 height:530 left:50 bottom:10 AlignBars = justify

DateFormat = yyyy Period    = from:1919 till:1991 TimeAxis  = orientation:vertical ScaleMajor = unit:year increment:5 start:1920


 * 1) there is no automatic collision detection,
 * 2) so shift texts up or down manually to avoid overlap

Define $dx = 25 # shift text to right side of bar

PlotData= bar:Leaders color:red width:25 mark:(line,white) align:left fontsize:S

from:start till:1922 shift:($dx,15)  text:Vladimir~Ilyich~Lenin from:1922 till:1953 shift:($dx,5)    text:Josef~Stalin from:1953 till:1964 shift:($dx,5)    text:Nikita~Khrushchev from:1964 till:1982 shift:($dx,5)    text:Leonid~Brezhnev from:1982 till:1984 shift:($dx,-12)  text:Yuri~Andropov from:1984 till:1985 shift:($dx,4)    text:Konstantin~Chernenko fontsize:XS from:1985 till:end  shift:($dx,10)   text:Mikhail~Gorbachev

April 10: Support added for clickable maps

The code example shown above already contains some wiki links. Wikipedia does not support these yet, but may do so in the foreseeable future. Try it at my project site.

Double and single brackets can be used like on wikipedia, language prefix is possible, e.g. more about foo. Single brackets for external links are also supported.

I propose to add the code on the image discussion page. See for an example on en:

Please add your comments.

Looks good. I'm going to tell about this to other Japanese Wikipedians now. :-) Tomos 00:11, 27 Mar 2004 (UTC)

I think it's a great idea! But, would it be possible to create a user-friendly interface, so that those who are less adept with code can use it? 154.5.51.173 01:12, 27 Mar 2004 (UTC)


 * Well, no programming skills are required, it is not really procedural code (no conditions, no loops), rather a strict set of rules on how to express oneself. A point and click, drag and drop interface would be nice, but I'll leave that to someone else, or maybe in a years time when I can't think of something else to do. Erik Zachte

The key feature missing from this are of course imagemaps to make the links clickable. I realize this is nontrivial, but if the script could generate the necessary maps, I could try to hack MediaWiki to support them (possibly even directly interface with a script, so that the user doesn't need to run it).

One other thing I noticed is that the smaller fonts are quite ugly. Anti-aliasing would help a lot here. SVG would, too.&mdash;Eloquence 01:22, 27 Mar 2004 (UTC)


 * Ploticus can create imagemaps, so EasyTimeline could get syntax for that, would be nice indeed.


 * Also creating SVG is just a change of parameter (they look better but are not viewable on every platform so should be offered as second option, like with international stats, they are also much larger in download size and take time to render on the client side, a fast PC may be needed).


 * PNG images can be included as well, I will add syntax for that in the foreseeable future.


 * Ploticus can support other fonts via freetype lib but this requires a rebuild with GCC, at least for Windows, (I haven't tried Linux version, but features should be cross-platform) see . I'm not familiar with GCC so haven't tried that. Erik Zachte


 * SVG support added. See example Erik Zachte

A wikier way of doing this would be to have the timelines updateable within the article (i.e. make the charts creatable online). So lets say there is a timeline, and someone wishes to add an element, they would update the PlotData area, and the software code would autogenerate the timeline. Just a thought DavidLevinson


 * Of course. Would be nice. Eloquence might be willing to pull that off. See above. Erik Zachte

Great job! Just a question. How to do with text only browser? Do you think a pure HTML version is feasible? (I mean only using