Description
Tools/Software
Requirement
- An IDE for writing HTML and JavaScript Code
- You need to use D3.js for writing your code to generate visualizations.
- You cannot use visual design tools for creating the webpages.
- This assignment may require some D3/JavaScript concepts that are not covered in the class. Students are expected to research those topics on their own and use them to complete the assignment. Self-learning will be a goal for all the assignments and the project in this course.
- The assignment consists of two tasks.
Task 1:
- Clean and correct the data (if necessary) and load it in your program for visualization. You do not need to have this data in a separate file.
- Create an svg element of size 500×500. [1]
- Sort the data in ascending order using marks property. [1]
- Plot the data using a horizontal bar plot. Student number on the yaxis and marks on the x-axis. [1]
- Provide a widget (button, radio button etc.) using which the user can remove the three bars representing students with least marks from the graph. [1]
- Provide a widget that the user can use to go back to viewing all the students on the bar plot. [1]
- Draw a custom axis that shows the student number on the y-axis. [1]
- Draw a custom axis that shows marks on the x-axis. It has 10 ticks and the length of the ticks is equal to the height of the canvas. [1]
- No bar representing the data should be touching any edge of the svg canvas. [1]
- Your visualization should be easy to understand without ambiguity.
Data Visualization Page 1
Task 2:
- Download Kaggle-modified-Suddharshan.csv from the MLS. It is a shorter version of the dataset posted on Kaggle by Suddharshan. The following columns exist in the dataset:
name of the course, price, course description, content creator, average rating, course duration
- Clean and correct the dataset if required. You cannot delete any column but you can modify the contents of a column to meet your specific needs.
- Create an svg canvas of size 500×500 and upload the data to your program. [1]
- We are interested to see the correlation between the duration of the course and its average rating.
- Draw an appropriate scatterplot containing. [5]
- Initials of the content creators.
- average rating
- axis to help user read the plot
- The radius of the circles used in the bar plot is 5
- No circle is touching the edges of the canvas or outside the canvas.
- Draw a grid on the plot to assist user in reading the plot.





