Movies database visualization

This was a group work Members: Beroule, Pascal Bertrand, Lauriane Mankai, Yassine Waly, Mohamed Rached Wei, Xiang

What I learnt from this project:

→Effective teamwork flow. →Getting through the process of designing a visualization for data bases. →Working with d3 library. →Enhanced my coding skills in java script.

In this project, my contribution was mainly in the implementation of the magnets. My work consisted in finding an abstract method that works in any situation of this sort. This resulted in making an optimal data structure and a dynamic generation of magnets.

The idea is to create clusters of points (one point represents a movie), depending on the magnets they’re attracted to. As we wanted to make it as understandable as possible even for non-scientific users - because the target user is a lambda person interested in movies - we added colors to simplify the understanding of the output. The points go from blue to red depending on how much magnets they are attracted to. To use the entire red-blue scale and keep the clusters separable in color, we decided to normalize this color mapping using the maximum magnet per node number. That way, the movies that are attracted by the most magnets appear red, the ones that are not attracted by any magnet appear blue and the ones that have an intermediary number of attracting magnets appear accordingly.

Personal contribution:

The data structure: I created a map≺elementId,magnets≻ . In fact, this variable is the only link between any database and the magnets' generation I wanted to make the pipeline of the generation of magnets as independant from the data base as possible.

The generation of magnets: Based on the map I previously explained, I can pinpoint for each element of our data base the magnets that will affect it so I iterate on the keys (the ids of our element), and calculate the force of each one of them.

GitHub Repo
Final report

Video and image showcasing the magnet view: