This is a project for CS209 at SUSTECH.
Team member: Yifan Zhang, Biao Wang, Sixu Tan
In this project, we built a simple but useful covid19 data visulization web-app, which contains both frontend and backend. Components and techniques utilized are as follows:
- Frontend: Vue, webpack
- Backend: Springboot
- Database: PostgreSQL
- Data source: https://www.worldometers.info/coronavirus/ (Daily update), owid-covid-data.csv(Historcal data)
- Data process: Java
This DashBoard contains the following attributes for each country on each day:
- Total infected cases
- New infected cases
- Total deaths
- New deaths
- Total vaccinated
- New vaccinated
This DashBoard currently has the following functions:
- Efficient data strcture to process the data and reliable data storage.
- Data table-view display.
- Support 4 methods of visulization, including world map, line charts, dynamic charts, pie charts. With the well-designed backend and frontend, the visulization methods is scalable, which means user can cumstomize the charts with ease.
- Automatically track the latest covid19 data using web crawler.
- Support search and sort functions to display table-view.
- Support data export to json and image export.
- Flexible parameters can be set to display the data.
- Support animation visulization.
As shown, search and sort can be invoked using the floating selector on the right side.
Line charts shows the new cases, deaths or VAcs of a selected Country in the last 7 days from ceitain day.
Pie charts presents the COVID19 situation among all continents.
Map shows total cases of a certain country all around the world.
This dynamic animation figure shows the total cases of 10 countries.
With web crawler, the most up-to-date data can be retrieved. This figure presents part of data scraped from the internet.
Thanks all the team members, they stayed up late for a whole weekend to finish this fancy project. Thanks Meeting room 804B in College of Engineering, where we combated the codes.