Interactive data interface

Rather than just displaying data, make it possible for the user to interact with a substantial dataset. For example, this could involve using a control to alter the view on the data; filtering what is displayed by one or more features; overlaying datasets; or adding, deleting or modifying data.

Example projects

  • A map showing animal migrations which can be updated according to the time of year.
  • A web page that takes in a postcode and displays the location of restaurants within a certain distance of that postcode.

See the COVID-19 data dashboard for some more ideas.


Shiny is an R package that makes it easy to build interactive web apps straight from R:

Jupyter widgets allow you to build interactive GUIs for Python notebooks:

D3.js is a powerful data visualisation library but the learning curve is quite steep. Here are some useful examples: