30

This is what I'm trying to accomplish:

Timeline

In this example, I have a starting date (1º Jun 2011), an ending date (1º Jul 2012) and multiple events between this range.

Each event is related to one day of the calendar (although it is possible to have many events on a single day).

This data is fetched from a MySQL DB.

Any help or suggestion will be highly appreciated.

Den
  • 1,827
  • 3
  • 25
  • 46
azeós
  • 4,853
  • 4
  • 21
  • 40

3 Answers3

53

I recently had to do something similar. I ended up writing a d3 plugin that could handle this case among a few others. https://github.com/jiahuang/d3-timeline

enter image description here

enter image description here

enter image description here

enter image description here

I'm pretty new to D3 as well, but I hope it's useful.

VividD
  • 10,456
  • 6
  • 64
  • 111
zhyfer
  • 920
  • 1
  • 7
  • 10
  • I had to make some changes in the code, but your plugin was exactly what I needed. Thanks and sorry for the late response, I was busy with another stuff. – azeós Feb 13 '13 at 16:15
  • 2
    @azeós could you share your modifications with the class? I am very curious. – randomblink Dec 19 '14 at 16:44
  • @randomblink It was for an old and dead project. I'll search through the files and see if I can find it. – azeós Dec 19 '14 at 20:35
9

You should be able to accomplish this with a time scale and an axis

Scott Murray has a really good set of tutorials that culminates in one for axes

Just think of your time line as a 1-dimensional scatterplot with a time scale.

Superboggly
  • 5,804
  • 2
  • 24
  • 27
1

I am going to develop similar visualization and found on Github timeknots component based on d3.js.