Extension:EasyTimeline

From Linux Web Expert

The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
MediaWiki extensions manual
EasyTimeline
Release status: stable
Implementation Tag
Description Adds ‎<timeline> tag for creating timelines
Author(s) Erik Zachte
MediaWiki >= 1.42
Database changes No
License GNU General Public License 2.0 only
Download
CHANGELOG
Example See below
  • $wgTimelineRsvgCommand
  • $wgTimelineFontFile
  • $wgTimelineFileBackend
  • $wgTimelineFonts
  • $wgTimelineFontDirectory
  • $wgTimelinePloticusCommand
  • $wgTimelinePerlCommand
Quarterly downloads Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin').
Public wikis using Lua error in Module:Extension at line 172: bad argument #1 to 'inNamespace' (unrecognized namespace name 'skin').
Translate the EasyTimeline extension
Issues Open tasks · Report a bug
Other languages:

The EasyTimeline extension produces an embedded image from wikitext. The image can be a one-dimensional diagram (horizontally or vertically), or a two-dimensional one.

See the help page on installing EasyTimeline on your wiki. See also this page on EasyTimeline or play with it at test.wikipedia.org.

See the help page on using the syntax provided by this extension.

There is a long-term effort to get the Graph extension to replace this extension.

Requirements

This extension requires the following programs installed on the server:

Charts examples

Several examples of what is possible. For more extensive examples see

<timeline> ImageSize = width:160 height:550 PlotArea = width:50 height:530 left:50 bottom:10

DateFormat = yyyy Period = from:1917 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:1924 shift:($dx,15)   text:Vladimir~Ilyich~Lenin
 from:1924  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

</timeline>

  

<timeline> ImageSize = width:800 height:100 PlotArea = left:65 right:15 bottom:20 top:5 AlignBars = justify

Colors =

 id:phanerozoic value:rgb(0.435,0.85,0.866)
 id:cenozoic value:rgb(0.949,0.976,0.113)
 id:quaternary value:rgb(0.976,0.976,0.498)
 id:neogene value:rgb(1,0.901,0.098)
 id:paleogene value:rgb(0.992,0.603,0.321)
 id:mesozoic value:rgb(0.403,0.772,0.792)
 id:cretaceous value:rgb(0.498,0.776,0.306)
 id:jurassic value:rgb(0.203,0.698,0.788)
 id:triassic value:rgb(0.505,0.168,0.572)
 id:paleozoic value:rgb(0.6,0.752,0.552)
 id:permian value:rgb(0.941,0.25,0.156)
 id:carboniferous value:rgb(0.403,0.647,0.6)
 id:devonian value:rgb(0.796,0.549,0.215)
 id:silurian value:rgb(0.702,0.882,0.713)
 id:ordovician value:rgb(0,0.572,0.439)
 id:cambrian value:rgb(0.496,0.627,0.337)
 id:proterozoic value:rgb(0.968,0.207,0.388)
 id:neoproterozoic value:rgb(0.996,0.701,0.258)
 id:ediacaran value:rgb(0.996,0.85,0.415)
 id:cryogenian value:rgb(0.996,0.8,0.36)
 id:tonian value:rgb(0.996,0.75,0.305)
 id:mesoproterozoic value:rgb(0.996,0.705,0.384)
 id:stenian value:rgb(0.996,0.85,0.604)
 id:ectasian value:rgb(0.996,0.8,0.541)
 id:calymmian value:rgb(0.996,0.75,0.478)
 id:paleoproterozoic value:rgb(0.968,0.263,0.44)
 id:statherian value:rgb(0.968,0.459,0.655)
 id:orosirian value:rgb(0.968,0.408,0.596)
 id:rhyacian value:rgb(0.968,0.357,0.537)
 id:siderian value:rgb(0.968,0.306,0.478)
 id:archean value:rgb(0.996,0.157,0.498)
 id:neoarchean value:rgb(0.976,0.608,0.757)
 id:mesoarchean value:rgb(0.968,0.408,0.662)
 id:paleoarchean value:rgb(0.96,0.266,0.624)
 id:eoarchean value:rgb(0.902,0.114,0.549)
 id:hadean value:rgb(0.717,0,0.494)
 id:black value:black
 id:white value:white

Period = from:-4567 till:0 TimeAxis = orientation:horizontal ScaleMajor = unit:year increment:500 start:-4500 ScaleMinor = unit:year increment:100 start:-4500

Define $markred = text:"*" textcolor:red shift:(0,3) fontsize:10

PlotData=

 align:center textcolor:black fontsize:8 mark:(line,black) width:25 shift:(0,-5)


 bar:eon
 at:       0 align:right $markred
 at:    -542 align:left  $markred shift:(2,3)
 from:  -542 till:    0  text:Phanerozoic color:phanerozoic   
 from: -2500 till: -542  text:Proterozoic color:proterozoic   
 from: -4000 till: -2500 text:Archean     color:archean   
 from: start till: -4000 text:Hadean      color:hadean
 bar:era
 from: -65.5 till: 0     text:C color:cenozoic        
 from: -251  till: -65.5 text:Meso color:mesozoic        
 from: -542  till: -251  text:Paleozoic color:paleozoic 
 from: -1000 till: -542  text:Neoproterozoic color:neoproterozoic   
 from: -1600 till: -1000 text:Mesoproterozoic color:mesoproterozoic  
 from: -2500 till: -1600 text:Paleoproterozoic color:paleoproterozoic 
 from: -2800 till: -2500 text:Neoarch color:neoarchean       
 from: -3200 till: -2800 text:Mesoarch color:mesoarchean      
 from: -3600 till: -3200 text:Paleoarch color:paleoarchean     
 from: -4000 till: -3600 text:Eoarchean color:eoarchean
 from: start till: -4000 color:white
 bar:period
 fontsize:6
 from: -2.6 till: 0        color:quaternary
 from: -23.03 till: -2.6   color:neogene
 from: -65.5 till: -23.03  color:paleogene
 from: -145.5 till: -65.5  color:cretaceous
 from: -199.6 till: -145.5 color:jurassic
 from: -251 till: -199.6   color:triassic
 from: -299 till: -251     color:permian
 from: -359.2 till: -299   color:carboniferous
 from: -416 till: -359.2   color:devonian
 from: -443.7 till: -416   color:silurian
 from: -488.3 till: -443.7 color:ordovician
 from: -542 till: -488.3   color:cambrian
 from: -635  till: -542  text:Ed. color:ediacaran
 from: -850  till: -635  text:Cryo color:cryogenian
 from: -1000 till: -850  text:Tonian color:tonian
 from: -1200 till: -1000 text:Stenian color:stenian
 from: -1400 till: -1200 text:Ectasian color:ectasian
 from: -1600 till: -1400 text:Calymm color:calymmian
 from: -1800 till: -1600 text:Stather color:statherian
 from: -2050 till: -1800 text:Orosirian color:orosirian
 from: -2300 till: -2050 text:Rhyacian color:rhyacian
 from: -2500 till: -2300 text:Siderian color:siderian
 from: start till: -2500 color:white

</timeline>

<timeline> ImageSize = width:800 height:100 PlotArea = left:65 right:15 bottom:20 top:5 AlignBars = justify

Colors =

 id:phanerozoic value:rgb(0.435,0.85,0.866)
 id:cenozoic value:rgb(0.949,0.976,0.113)
 id:quaternary value:rgb(0.976,0.976,0.498)
 id:neogene value:rgb(1,0.901,0.098)
 id:paleogene value:rgb(0.992,0.603,0.321)
 id:mesozoic value:rgb(0.403,0.772,0.792)
 id:cretaceous value:rgb(0.498,0.776,0.306)
 id:jurassic value:rgb(0.203,0.698,0.788)
 id:triassic value:rgb(0.505,0.168,0.572)
 id:paleozoic value:rgb(0.6,0.752,0.552)
 id:permian value:rgb(0.941,0.25,0.156)
 id:carboniferous value:rgb(0.403,0.647,0.6)
 id:devonian value:rgb(0.796,0.549,0.215)
 id:silurian value:rgb(0.702,0.882,0.713)
 id:ordovician value:rgb(0,0.572,0.439)
 id:cambrian value:rgb(0.496,0.627,0.337)
 id:black  value:black
 id:white  value:white
 id:darkgreen value:rgb(0,0.35,0)

Period = from:-542 till:0 TimeAxis = orientation:horizontal ScaleMajor = unit:year increment:100 start:-500 ScaleMinor = unit:year increment:10 start:-540

Define $markred = text:"*" textcolor:red shift:(0,3) fontsize:10 Define $markgreen = text:"*" textcolor:darkgreen shift:(0,3) fontsize:10

PlotData=

 align:center textcolor:black fontsize:8 mark:(line,black) width:25 shift:(0,-5)
 bar:eon
 at:      0   align:right  $markred 
 at:   -542   align:left   $markred shift:(2,3)
 from: -542   till:    0   text:Phanerozoic color:phanerozoic
 bar:era
 at:   0     align:right $markgreen
 at:   -65.5 align:left  $markgreen shift:(2,3)
 from: -65.5 till: 0     text:Cenozoic color:cenozoic
 from: -251  till: -65.5 text:Mesozoic color:mesozoic
 from: -542  till: -251  text:Paleozoic color:paleozoic
 bar:period fontsize:8
 from: -2.588 till: 0 text:Q. color:quaternary
 from: -23.03 till: -2.588 text:Neo color:neogene
 from: -65.5 till: -23.03 text:Paleogene color:paleogene
 from: -145.5 till: -65.5 text:Cretaceous color:cretaceous
 from: -199.6 till: -145.5 text:Jurassic color:jurassic
 from: -251.4 till: -199.6 text:Triassic color:triassic
 from: -299 till: -251.4 text:Permian color:permian
 from: -359.2 till: -299 text:Carboniferous color:carboniferous
 from: -416 till: -359.2 text:Devonian color:devonian
 from: -443.7 till: -416 text:Silurian color:silurian
 from: -488.3 till: -443.7 text:Ordovician color:ordovician
 from: -542 till: -488.3 text:[[Cambrian] color:cambrian

</timeline>

<timeline> ImageSize = width:800 height:100 PlotArea = left:65 right:15 bottom:20 top:5 AlignBars = justify

Colors =

 id:cenozoic value:rgb(0.949,0.976,0.113)
 id:quaternary value:rgb(0.976,0.976,0.498)
 id:holocene value:rgb(0.996,0.949,0.878)
 id:pleistocene value:rgb(1,0.949,0.678)
 id:neogene value:rgb(1,0.901,0.098)
 id:pliocene value:rgb(1,1,0.6)
 id:miocene value:rgb(1,1,0)
 id:paleogene value:rgb(0.992,0.603,0.321)
 id:oligocene value:rgb(0.992,0.752,0.478)
 id:eocene value:rgb(0.992,0.705,0.423)
 id:paleocene value:rgb(0.992,0.654,0.372)
 id:cambrian value:rgb(0.496,0.627,0.337)
 id:black value:black
 id:white value:white
 id:darkgreen value:rgb(0,0.35,0)

Period = from:-65.5 till:0 TimeAxis = orientation:horizontal ScaleMajor = unit:year increment:10 start:-60 ScaleMinor = unit:year increment:1 start:-65

Define $markred = text:"*" textcolor:red shift:(0,3) fontsize:10 Define $markgreen = text:"*" textcolor:darkgreen shift:(0,3) fontsize:10

PlotData=

 align:center textcolor:black fontsize:8 mark:(line,black) width:25 shift:(0,-5)
 bar:era
 at:     0  align:right $markgreen 
 at: start  align:left  $markgreen shift:(2,3)
 from:start till:  0    text:Cambrian color:cambrian

</timeline>

<timeline> ImageSize = width:800 height:100 PlotArea = left:65 right:15 bottom:20 top:5 AlignBars = justify

Colors =

 id:cenozoic value:rgb(0.949,0.976,0.113)
 id:quaternary value:rgb(0.976,0.976,0.498)
 id:holocene value:rgb(0.996,0.949,0.878)
 id:pleistocene value:rgb(1,0.949,0.678)
 id:neogene value:rgb(1,0.901,0.098)
 id:pliocene value:rgb(1,1,0.6)
 id:miocene value:rgb(1,1,0)
 id:paleogene value:rgb(0.992,0.603,0.321)
 id:oligocene value:rgb(0.992,0.752,0.478)
 id:eocene value:rgb(0.992,0.705,0.423)
 id:paleocene value:rgb(0.992,0.654,0.372)
 id:black value:black
 id:white value:white
 id:darkgreen value:rgb(0,0.35,0)

Period = from:-65.5 till:0 TimeAxis = orientation:horizontal ScaleMajor = unit:year increment:10 start:-60 ScaleMinor = unit:year increment:1 start:-65

Define $markred = text:"*" textcolor:red shift:(0,3) fontsize:10 Define $markgreen = text:"*" textcolor:darkgreen shift:(0,3) fontsize:10

PlotData=

 align:center textcolor:black fontsize:8 mark:(line,black) width:25 shift:(0,-5)
 bar:era
 at:     0  align:right $markgreen 
 at: start  align:left  $markgreen shift:(2,3)
 from:start till:  0    text:Cenozoic color:cenozoic
 bar:period
 from: -2.588 till: 0 text:Q. color:quaternary
 from: -23.03 till: -2.588 text:Neogene color:neogene
 from: start  till: -23.03 text:Paleogene color:paleogene
 bar:epoch
 from: -0.1 till: 0  text:H color:holocene 
 from: -2.588 till: -0.1 text:P color:pleistocene
 from: -5.332 till: -2.588 text:Pliocene color:pliocene fontsize:7
 from: -23.03 till: -5.332 text:Miocene color:miocene
 from: -33.9 till: -23.03 text:Oligocene color:oligocene
 from: -55.8 till: -33.9 text:Eocene color:eocene
 from: start till: -55.8 text:Paleocene color:paleocene

</timeline>

<timeline>

ImageSize = width:903 height:660 PlotArea = left:73 right:130 top:30 bottom:140 Legend = top:110 columnwidth:250 orientation:vertical left:120 AlignBars = late

DateFormat = dd/mm/yyyy Period = from:01/01/2001 till:01/01/2007

Colors =

id:canvas  value:gray(0.95)        # background for whole image
id:bars    value:white             # background for bars
id:grid1   value:gray(0.6)         # major grid
id:grid2   value:gray(0.85)        # minor grid
id:gray    value:gray(0.5)         # for colophon
id:gray2   value:gray(0.8)         # for colophon
id:darkred value:rgb(0.5,0,0)      # for colophon
id:A10       value:rgb(0.3,0,0)     legend:10+_articles_(*) 
id:A100      value:rgb(0.5,0,0)     legend:100+_articles
id:A1000     value:rgb(0.8,0.2,0)   legend:1000+_articles 
id:A10000    value:rgb(1,0.5,0)     legend:10,000+_articles 
id:A100000   value:rgb(1,0.8,0)     legend:100,000+_articles 
id:A1000000  value:rgb(1,1,0)       legend:1,000,000+_articles
  1. id:U10 value:rgb(0.85,0.85,1) legend:10+_editors
id:U100      value:rgb(0.8,0.8,1)   legend:100+_editors
id:U1000     value:rgb(0.6,0.6,1)   legend:1000+_editors
id:U10000    value:rgb(0.35,0.35,1) legend:10,000+_editors
id:U100000   value:rgb(0,0,1)       legend:100,000+_editors
id:D0        value:rgb(0.95,0.95,0.95) legend:. # dummy
id:D1        value:gray(0.95)       legend:. # dummy 
id:L100      value:rgb(0.8,0.35,0)    legend:languages_with_100+_articles
id:L1000     value:rgb(0.8,0,0.6)   legend:languages_with_1000+_articles
id:L10000    value:rgb(0,0,0.8)     legend:languages_with_10,000+_articles
id:L100000   value:rgb(0,0.6,0)     legend:languages_with_100,000+_articles

ScaleMajor = grid:grid1 unit:year increment:1 start:01/01/2001 ScaleMinor = grid:grid2 unit:month increment:3 start:01/01/2001 BackgroundColors = canvas:canvas TimeAxis = orientation:horizontal format:yyyy

BarData =

 bar:Wikipedias    text:[1]
 bar:Meta          text:[2]
 bar:Wiktionaries  text:[3]
 bar:Wikiquotes    text:[4]
 bar:Wikibooks     text:[5]
 bar:Wikisources   text:[6]
 bar:Commons       text:[7]
 bar:Wikinews      text:[8]
 bar:Wikiversity   text:[9]

Define $A10 = color:A10 width:0.1in Define $A100 = color:A100 width:0.15in Define $A1000 = color:A1000 width:0.2in Define $A10000 = color:A10000 width:0.3in Define $A100000 = color:A100000 width:0.4in Define $A1000000 = color:A1000000 width:0.5in

Define $U10 = color:U10 width:0.02in Define $U100 = color:U100 width:0.06in Define $U1000 = color:U1000 width:0.10in Define $U10000 = color:U10000 width:0.15in Define $U100000 = color:U100000 width:0.20in

Define $L100 = textcolor:L100 align:left fontsize:9 Define $L1000 = textcolor:L1000 align:right fontsize:9 Define $L10000 = textcolor:L10000 align:right fontsize:9 Define $L10000c = textcolor:L10000 align:right fontsize:9 Define $L100000 = textcolor:L100000 align:right fontsize:9

  1. make numbers fit exactly below 1,000,000+ bar

Define $S00a1 = shift:( 3,-35) Define $S000a1 = shift:( -1,-35) Define $S0000a1 = shift:(-12,-35) Define $S00000a1 = shift:(-26,-35)

Define $S0000a2 = shift:(-17,-35) Define $S00000a2 = shift:(-34,-35)

Define $S0000a3 = shift:(-21,-35) Define $S00000a3 = shift:(-39,-35)

  1. make numbers fit exactly below 100,000+ bar

Define $S00b1 = shift:( 3,-30) Define $S000b1 = shift:( -1,-30) Define $S0000b1 = shift:(-12,-30) Define $S00000b1 = shift:(-26,-30)

Define $S0000b2 = shift:(-17,-30) Define $S00000b2 = shift:(-34,-30)

Define $S00000b3 = shift:(-39,-30)

  1. make numbers fit exactly below 10,000+ bar

Define $S00c1 = shift:( 3,-25) Define $S000c1 = shift:( -1,-25) Define $S0000c1 = shift:(-12,-25) Define $S00000c1 = shift:(-26,-25)

Define $S0000c2 = shift:(-17,-25) Define $S00000c2 = shift:(-34,-25)

Define $S00000c3 = shift:(-39,-25)

  1. make numbers fit exactly below 1,000+ bar

Define $S00d1 = shift:( 3,-20) Define $S000d1 = shift:( -1,-20) Define $S0000d1 = shift:(-12,-20) Define $S00000d1 = shift:(-26,-20)

Define $S0000d2 = shift:(-17,-20) Define $S00000d2 = shift:(-34,-20)

Define $S00000d3 = shift:(-39,-20)

Define $TTt = textcolor:black shift:(78, 30) align:center # Title Define $TAn = textcolor:black shift:(75, 10) align:right # Articles count Define $TUn = textcolor:black shift:(75, -4) align:right # Users count Define $TEn = textcolor:black shift:(75,-18) align:right # Edits count Define $TAt = textcolor:black shift:(82, 10) align:left # Articles label Define $TUt = textcolor:black shift:(82, -4) align:left # Users label Define $TEt = textcolor:black shift:(82,-18) align:left # Edits label

  1. Define $Figures = textcolor:white align:right shift:(0,-4) fontsize:S # experiment with figures centered in bars

PlotData=

 bar:Wikipedias   from:01/01/2001 till:01/02/2001 $A10     
 bar:Wikipedias   from:01/02/2001 till:01/04/2001 $A100    
 bar:Wikipedias   from:01/04/2001 till:01/10/2001 $A1000
 bar:Wikipedias   from:01/10/2001 till:01/10/2002 $A10000
 bar:Wikipedias   from:01/10/2002 till:01/09/2004 $A100000
 bar:Wikipedias   from:01/09/2004 till:end        $A1000000
  1. bar:Wikipedias from:01/01/2001 till:01/07/2001 $U10
 bar:Wikipedias   from:01/07/2001 till:01/08/2002 $U100    
 bar:Wikipedias   from:01/08/2002 till:01/01/2004 $U1000
 bar:Wikipedias   from:01/01/2004 till:01/10/2005 $U10000
 bar:Wikipedias   from:01/10/2005 till:end        $U100000
  1. experiment with figures centered in bars
  2. bar:Wikipedias at:01/01/2002 text:"1, 1, 7" $L100 $Figures
  3. bar:Wikipedias at:01/01/2003 text:"1, 8, 14" $L100 $Figures
  4. bar:Wikipedias at:01/01/2004 text:"1, 9, 22, 29" $L100 $Figures
  5. bar:Wikipedias at:01/01/2005 text:"2, 20, 52, 81" $L100 $Figures
  6. bar:Wikipedias at:01/01/2006 text:"8, 37, 84, 120" $L100 $Figures
  7. bar:Wikipedias at:01/01/2007 text:"12, 55, 124, 179" $L100 $Figures
 bar:Wikipedias     at:01/01/2002 text:7          $L100     $S00a1
 bar:Wikipedias     at:01/01/2002 text:1          $L1000    $S000a1
 bar:Wikipedias     at:01/01/2002 text:1          $L10000   $S0000a1

 bar:Wikipedias     at:01/01/2003 text:14         $L100     $S00a1
 bar:Wikipedias     at:01/01/2003 text:_8         $L1000    $S000a1 
 bar:Wikipedias     at:01/01/2003 text:1          $L10000   $S0000a1 
  1. 100K for Dec 2002 in wikistats is rounded figure, actually 99939
  2. bar:Wikipedias at:01/01/2003 text:1 $L100000b $S00000a1
 bar:Wikipedias     at:01/01/2004 text:39         $L100     $S00a1
 bar:Wikipedias     at:01/01/2004 text:22         $L1000    $S000a1 
 bar:Wikipedias     at:01/01/2004 text:9_         $L10000   $S0000a2 
 bar:Wikipedias     at:01/01/2004 text:1          $L100000  $S00000a2 
 bar:Wikipedias     at:01/01/2005 text:81         $L100     $S00a1
 bar:Wikipedias     at:01/01/2005 text:52         $L1000    $S000a1 
 bar:Wikipedias     at:01/01/2005 text:20         $L10000   $S0000a2 
 bar:Wikipedias     at:01/01/2005 text:2_         $L100000  $S00000a2 
 bar:Wikipedias     at:01/01/2006 text:120        $L100     $S00a1
 bar:Wikipedias     at:01/01/2006 text:84         $L1000    $S000a1 
 bar:Wikipedias     at:01/01/2006 text:37         $L10000   $S0000a2 
 bar:Wikipedias     at:01/01/2006 text:8_         $L100000  $S00000a2 
 bar:Wikipedias     at:01/01/2007 text:179        $L100     $S00a1 
 bar:Wikipedias     at:01/01/2007 text:124        $L1000    $S000a1 
 bar:Wikipedias     at:01/01/2007 text:55_        $L10000   $S0000a3 
 bar:Wikipedias     at:01/01/2007 text:12         $L100000  $S00000a3 
 bar:Wikipedias     at:end  $TTt  text:"January 1, 2007" 
 bar:Wikipedias     at:end  $TAn  text:? # "3,100,000"  textcolor:darkred
 bar:Wikipedias     at:end  $TUn  text:? # "124,580"    textcolor:darkred
 bar:Wikipedias     at:end  $TEn  text:? # "53,940,000" textcolor:darkred
 bar:Wikipedias     at:end  $TAt  text:"articles"      textcolor:darkred
 bar:Wikipedias     at:end  $TUt  text:"editors"       textcolor:darkred
 bar:Wikipedias     at:end  $TEt  text:"edits"         textcolor:darkred
 textcolor:black
 bar:Meta         from:01/11/2001 till:01/02/2002 $A10
 bar:Meta         from:01/02/2002 till:01/03/2004 $A100
 bar:Meta         from:01/03/2004 till:end        $A1000
  1. bar:Meta from:01/11/2001 till:01/06/2003 $U10
 bar:Meta         from:01/06/2003 till:30/04/2005 $U100
 bar:Meta         from:01/05/2005 till:end        $U1000
 bar:Meta           at:01/01/2007 text:n.a.      $L100     $S00d1 
 bar:Meta           at:end  $TAn  text:"8,600" 
 bar:Meta           at:end  $TUn  text:"2,084" 
 bar:Meta           at:end  $TEn  text:"244,000" # 8.6K articles * 28.4 mean edits per article
 bar:Meta           at:end  $TAt  text:"articles" 
 bar:Meta           at:end  $TUt  text:"editors" 
 bar:Meta           at:end  $TEt  text:"edits" 
 bar:Wiktionaries from:01/12/2002 till:01/02/2003 $A100     
 bar:Wiktionaries from:01/02/2003 till:01/09/2003 $A1000
 bar:Wiktionaries from:01/09/2003 till:01/11/2004 $A10000
 bar:Wiktionaries from:01/11/2004 till:01/07/2006 $A100000
 bar:Wiktionaries from:01/07/2006 till:end        $A1000000
  1. bar:Wiktionaries from:01/12/2002 till:01/09/2003 $U10
 bar:Wiktionaries from:01/09/2003 till:01/02/2005 $U100
 bar:Wiktionaries from:01/02/2005 till:end        $U1000
 bar:Wiktionaries   at:01/01/2003 text:1          $L100     $S00a1
 bar:Wiktionaries   at:01/01/2004 text:1          $L100     $S00a1
 bar:Wiktionaries   at:01/01/2004 text:1          $L1000    $S000a1
 bar:Wiktionaries   at:01/01/2004 text:1          $L10000   $S0000a1
 bar:Wiktionaries   at:01/01/2005 text:27         $L100     $S00a1
 bar:Wiktionaries   at:01/01/2005 text:12         $L1000    $S000a1
 bar:Wiktionaries   at:01/01/2005 text:3          $L10000   $S0000a2
 bar:Wiktionaries   at:01/01/2006 text:53         $L100     $S00a1
 bar:Wiktionaries   at:01/01/2006 text:32         $L1000    $S000a1
 bar:Wiktionaries   at:01/01/2006 text:10         $L10000   $S0000a2
 bar:Wiktionaries   at:01/01/2006 text:1          $L100000  $S00000a2
 bar:Wiktionaries   at:01/01/2007 text:79         $L100     $S00a1
 bar:Wiktionaries   at:01/01/2007 text:49         $L1000    $S000a1
 bar:Wiktionaries   at:01/01/2007 text:25         $L10000   $S0000a2
 bar:Wiktionaries   at:01/01/2007 text:4          $L100000  $S00000a2 
 bar:Wiktionaries   at:end  $TAn  text:"1,700,000" 
 bar:Wiktionaries   at:end  $TUn  text:"4,398" 
 bar:Wiktionaries   at:end  $TEn  text:"7,480,000" # 1.7M articles * 4.4 mean edits per article
 bar:Wiktionaries   at:end  $TAt  text:"lemmas" 
 bar:Wiktionaries   at:end  $TUt  text:"editors" 
 bar:Wiktionaries   at:end  $TEt  text:"edits" 
 bar:Wikiquotes   from:01/07/2003 till:01/05/2004 $A100    
 bar:Wikiquotes   from:01/05/2004 till:31/03/2005 $A1000   
 bar:Wikiquotes   from:01/04/2005 till:end        $A10000  
  1. bar:Wikiquotes from:01/07/2003 till:01/07/2004 $U10
 bar:Wikiquotes   from:01/07/2004 till:30/09/2005 $U100
 bar:Wikiquotes   from:01/10/2005 till:end        $U1000
 bar:Wikiquotes     at:01/01/2004 text:1          $L100    $S00c1
 bar:Wikiquotes     at:01/01/2005 text:7          $L100    $S00c1
 bar:Wikiquotes     at:01/01/2006 text:23         $L100    $S00c1
 bar:Wikiquotes     at:01/01/2007 text:32         $L100    $S00c1
 bar:Wikiquotes     at:01/01/2005 text:2          $L1000   $S000c1
 bar:Wikiquotes     at:01/01/2006 text:7          $L1000   $S000c1
 bar:Wikiquotes     at:01/01/2007 text:13         $L1000   $S000c1
 bar:Wikiquotes   at:end  $TAn  text:"55,000" 
 bar:Wikiquotes   at:end  $TUn  text:"2,472" 
 bar:Wikiquotes   at:end  $TEn  text:"748,000"  # 55K articles * 13.6 mean edits per article
 bar:Wikiquotes   at:end  $TAt  text:"articles" 
 bar:Wikiquotes   at:end  $TUt  text:"editors" 
 bar:Wikiquotes   at:end  $TEt  text:"edits" 
 bar:Wikibooks    from:01/07/2003 till:01/08/2003 $A10      
 bar:Wikibooks    from:01/08/2003 till:01/12/2003 $A100
 bar:Wikibooks    from:01/12/2003 till:31/03/2005 $A1000
 bar:Wikibooks    from:01/04/2005 till:end        $A10000
  1. bar:Wikibooks from:01/07/2003 till:01/03/2004 $U10
 bar:Wikibooks    from:01/03/2004 till:01/03/2005 $U100
 bar:Wikibooks    from:01/03/2005 till:end        $U1000
 bar:Wikibooks      at:01/01/2004 text:1          $L100    $S00c1
 bar:Wikibooks      at:01/01/2005 text:8          $L100    $S00c1
 bar:Wikibooks      at:01/01/2005 text:1          $L1000   $S000c1
 bar:Wikibooks      at:01/01/2006 text:25         $L100    $S00c1
 bar:Wikibooks      at:01/01/2006 text:3          $L1000   $S000c1
 bar:Wikibooks      at:01/01/2007 text:37         $L100    $S00c1
 bar:Wikibooks      at:01/01/2007 text:11         $L1000   $S000c1
 bar:Wikibooks      at:01/01/2007 text:1          $L10000  $S0000c2
 bar:Wikibooks      at:end  $TAn  text:"55,000" 
 bar:Wikibooks      at:end  $TUn  text:"5,475" 
 bar:Wikibooks      at:end  $TEn  text:"841,000"   # 55K articles * 15.3 mean edits per article
 bar:Wikibooks      at:end  $TAt  text:"chapters" 
 bar:Wikibooks      at:end  $TUt  text:"authors" 
 bar:Wikibooks      at:end  $TEt  text:"edits" 
 bar:Wikisources  from:01/11/2003 till:01/12/2003 $A10
 bar:Wikisources  from:01/12/2003 till:01/04/2004 $A100
 bar:Wikisources  from:01/04/2004 till:28/02/2005 $A1000
 bar:Wikisources  from:01/03/2005 till:01/07/2006 $A10000
 bar:Wikisources  from:01/07/2006 till:end        $A100000
  1. bar:Wikisources from:01/11/2003 till:01/07/2004 $U10
 bar:Wikisources  from:01/07/2004 till:01/03/2006 $U100
 bar:Wikisources  from:01/03/2006 till:end        $U1000
 bar:Wikisources    at:01/01/2005 text:6          $L100    $S00b1
 bar:Wikisources    at:01/01/2005 text:1          $L1000   $S000b1
 bar:Wikisources    at:01/01/2006 text:20         $L100    $S00b1
 bar:Wikisources    at:01/01/2006 text:8          $L1000   $S000b1
 bar:Wikisources    at:01/01/2006 text:1          $L10000  $S0000b2
 bar:Wikisources    at:01/01/2007 text:35         $L100    $S00b1
 bar:Wikisources    at:01/01/2007 text:22         $L1000   $S000b1
 bar:Wikisources    at:01/01/2007 text:3          $L10000  $S0000b2
 bar:Wikisources    at:end  $TAn  text:"144,000" 
 bar:Wikisources    at:end  $TUn  text:"1,838" 
 bar:Wikisources    at:end  $TEn  text:"705,000"   # 144K articles * 4.9 mean edits per article
 bar:Wikisources    at:end  $TAt  text:"sources" 
 bar:Wikisources    at:end  $TUt  text:"editors" 
 bar:Wikisources    at:end  $TEt  text:"edits" 
 bar:Commons      from:01/09/2004 till:01/10/2004 $A1000
 bar:Commons      from:01/10/2004 till:01/05/2005 $A10000
 bar:Commons      from:01/05/2005 till:01/12/2006 $A100000
 bar:Commons      from:01/12/2006 till:end        $A1000000
  1. bar:Commons from:01/09/2004 till:01/11/2004 $U10
 bar:Commons      from:01/11/2004 till:31/05/2005 $U100
 bar:Commons      from:01/06/2005 till:end        $U1000
 bar:Commons        at:01/01/2007 text:n.a.      $L100     $S00a1 
 bar:Commons        at:end  $TAn  text:"1,046,000" 
 bar:Commons        at:end  $TUn  text:"3,315" 
 bar:Commons        at:end  $TAt  text:"binaries" 
 bar:Commons        at:end  $TUt  text:"editors" 
 bar:Wikinews     from:01/11/2004 till:01/12/2004 $A10
 bar:Wikinews     from:01/12/2004 till:01/02/2005 $A100
 bar:Wikinews     from:01/02/2005 till:01/09/2005 $A1000
 bar:Wikinews     from:01/09/2005 till:end        $A10000
  1. bar:Wikinews from:01/11/2004 till:01/12/2004 $U10
 bar:Wikinews     from:01/12/2004 till:01/02/2006 $U100
 bar:Wikinews     from:01/02/2006 till:end        $U1000
 bar:Wikinews       at:01/01/2005 text:2          $L100    $S00c1
 bar:Wikinews       at:01/01/2006 text:13         $L100    $S00c1
 bar:Wikinews       at:01/01/2006 text:5          $L1000   $S000c1
 bar:Wikinews       at:01/01/2007 text:19         $L100    $S00c1
 bar:Wikinews       at:01/01/2007 text:9          $L1000   $S000c1
 bar:Wikinews       at:end  $TAn  text:"32,000" 
 bar:Wikinews       at:end  $TUn  text:"1,572" 
 bar:Wikinews       at:end  $TEn  text:"358,000" # 32K articles * 11.2 mean edits per article
 bar:Wikinews       at:end  $TAt  text:"reports" 
 bar:Wikinews       at:end  $TUt  text:"reporters" 
 bar:Wikinews       at:end  $TEt  text:"edits" 
  1. bar:Wikiversity from:01/10/2004 till:01/07/2005 $A10 # start at offical wikiversity launch date
  2. bar:Wikiversity from:01/07/2005 till:01/10/2006 $A100 # start at offical wikiversity launch date
 bar:Wikiversity  from:01/08/2006 till:01/10/2006 $A100
 bar:Wikiversity  from:01/10/2006 till:end        $A1000
 
 bar:Wikiversity  from:01/08/2006 till:end        $U100
  1. bar:Wikiversity at:01/01/2006 text:2 $L100 $S00d1 # start at offical wikiversity launch date
 bar:Wikiversity    at:01/01/2007 text:5          $L100   $S00d1
 bar:Wikiversity    at:01/01/2007 text:2          $L1000  $S000d1
 bar:Wikiversity    at:end  $TAn  text:"1,800" 
 bar:Wikiversity    at:end  $TUn  text:"337" 
 bar:Wikiversity    at:end  $TEn  text:"27,000" # 1.8K articles * 15.4 mean edits per article
 bar:Wikiversity    at:end  $TAt  text:"articles" 
 bar:Wikiversity    at:end  $TUt  text:"editors" 
 bar:Wikiversity    at:end  $TEt  text:"edits" 

TextData =

  pos:(300,673)
  fontsize:XL
  textcolor:black
  text:"Wikimedia Projects Growth"
  fontsize:S
  textcolor:gray
  pos:(8,52)
  text:"Plot _generated"
  pos:(8,37)
  text:"by"
  pos:(23,37)
  text:"[10]"
  pos:(8,23)
  text:"with"
  pos:(31,23)
  text:"[11]"
  textcolor:black
  pos:(300,24)
  text:(*) for Commons bars show binaries, not articles
  textcolor:darkred
  pos:(780,110)
  text:? = English Wikipedia
  text:statistics after Aug 2006
  text:are still not available 
  textcolor:gray
  pos:(845,58)
  text:"editors="
  text:"registered"
  text:"users with"
  text:"10+ edits" 

</timeline>


Code example

See also: Extension:EasyTimeline/syntax

<timeline>

  1. All measures are in pixels

ImageSize = width:160 height:550 PlotArea = left:50 right:0 bottom:10 top:10 AlignBars = justify

DateFormat = yyyy Period = from:1917 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:1924 shift:($dx,15)   text:Vladimir~Ilyich~Lenin
 from:1924  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

</timeline>

Just to show you that the script syntax is reasonably intuitive, here is the script for the image above: Soviet Leaders.

<timeline>
# All measures are in pixels

ImageSize  = width:160 height:550
PlotArea   = left:50 right:0 bottom:10 top:10
AlignBars  = justify

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

# there is no automatic collision detection,
# 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:1924 shift:($dx,15)   text:Vladimir~Ilyich~[[Special:MyLanguage/Lenin|Lenin]]
  from:1924  till:1953 shift:($dx,5)    text:[[Special:MyLanguage/Stalin|Josef~Stalin]]
  from:1953  till:1964 shift:($dx,5)    text:Nikita~[[Special:MyLanguage/Khrushchev|Khrushchev]]
  from:1964  till:1982 shift:($dx,5)    text:Leonid~[[Special:MyLanguage/Brezhnev|Brezhnev]]
  from:1982  till:1984 shift:($dx,-12)  text:Yuri~[[Special:MyLanguage/Andropov|Andropov]]
  from:1984  till:1985 shift:($dx,4)    text:Konstantin~[[Special:MyLanguage/Chernenko|Chernenko]] fontsize:XS
  from:1985  till:end  shift:($dx,10)   text:Mikhail~[[Special:MyLanguage/Gorbachev|Gorbachev]]
</timeline>

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

Great timelines elsewhere

Here are two great sites that may serve as inspiration, it would be very easy to recreate most of those timelines verbatim and with roughly similar layout with EasyTimeline (not yet with images but that may change), but I'm afraid that would be 'not done'.

  • Hyperhistory e.g. click on button 'people' left, then on 'special lifelines', right.
  • I hope we will have a set like [12] in a years time (click on full size image for any map), possibly even with images. The main effort will be to gather all info without snatching everything from here (most of these maps are based exclusively on data from Britannica).

Unicode

EasyTimeline does not yet support Unicode.

Aug 2004: Minimal UTF-8 support has been added, meaning that EasyTimeline now recognizes UTF-8 encoded characters. However support for directionality and complex scripts is very lacking. The default font may not have glyphs for all characters. An alternate font can be specified via $wgTimelineFontFile

SVG to PNG

To show texts correctly for RTL languages (like Arabic, Persian, Hebrew,...) you can use ‎<timeline method="svg2png">timeline code here‎</timeline> instead of ‎<timeline>timeline code here‎</timeline>. it shows timeline as png but the links will be disabled.

Tips

For first time users EasyTimeline may not seem that easy at all. As with all script languages it takes some getting used to. Also the syntax description may be a bit bewildering due to its sheer size. Fortunately many elements of the script language are optional.

The 'Easy' in EasyTimeline conveys the message that once a timeline exists it is not so hard to understand, enhance or correct. Also translating for use on another Wikipedia it is pretty straightforward.

Tips:

  • See some chart examples to find something you could pick and edit for your own stuff
  • Put each timeline on a separate Template page: this makes it easier to edit, faster to preview, possible to include it in several pages

Using the current date

To use the current date make sure the table opens with {{#tag:timeline| and closes with }}. Then the current date can be inserted using magic words. For example {{#time: d/m/Y }} or {{CURRENTDAY2}}/{{CURRENTMONTH2}}/{{CURRENTYEAR}} will both yield the date in format dd/mm/yyyy.

See also

Installation

See /installation

External links

  • SIMILE Widgets - DHTML-based AJAXy widget for visualizing time-based events