Planning: The Learning Data Science Clock v2.0

Emerging IdeasI’ve been planning this for a while – The Learning Data Science Clock v2.0. At the end of the article with v1.1 I mentioned that I was thinking about doing an interactive version using HTML5. I haven’t forgotten this, and I’ve been ticking it over in the back of my mind ever since.

The original version was done in Adobe Illustrator CC. One of the big advantages of using Illustrator is that it produces scalable output. If you zoom in, the components still look great and the text will be readable. One of the big disadvantages is that it was a lot of work and it’s not very flexible. If you want to add or change any of the text, it’s a major headache. Tip for anyone looking to do something similar in Illustrator. Doing a fan of text as we have at the ends of the nodes in Illustrator is not easy. I had to manually create and fan paths individually and then flow the text onto the paths. If I want to remove a line of text I have to manually shuffle the other lines round with a lot of cutting and pasting.

So for v2 what I want is a clock that is

  • Flexible;
  • Interactive;
  • Easy to update; and
  • Universal

Looking at this list and bearing in mind the tools that we’ve learning this term, I decided HTML5 was not the way to go. D3.js seems like a much better choice :-). It already has a lot of the functionally to display lists as trees, tree-maps, clusters, sunbursts and I’ve spent the last couple of months playing with it.

To make it as flexible as possible I plan to store the definition of the clock in a JSON (JavaScript Object Notation) file and then import that into the D3.js code. The programmers amongst you will, of course, recognise this as classic separation of code and data. It means if I want to change the clock, add subjects, change the order, delete items, I only have to do it in one place and I don’t have to make any changes to the code at all. Also using JSON means it’ll be reasonably human friendly to read.

So the first task will be constructing the input in JSON, which leads me to the next point. JSON is very useful, but what is it and where do you go to learn about it?

Image Copyright: alphaspirit / 123RF Stock Photo

Let my dataset change your mind

Hans Rosling

Author: Jamie

I blend and clarify data in novel ways to create new and illuminating insights.

Share This Post On

leave us a comment - we love to chat :-)

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Share This

Share This

Share this post with your friends!