Welcome to CPS 4745 (Visualization Design and Development)

Starting in Fall 2024, CPS 4745 (Visualization Design and Development) will no longer be co-listed with CPS 5745 (Data Analytics and Visualization). From that point forward, CPS 4745 will have distinct materials, assignments, and exams separate from CPS 5745. CPS 4745 will place greater emphasis on visualization design and basic development, while CPS 5745 will focus more on analytics and advanced visual development.

Students who take CPS 4745 in Fall 2024 will be eligible to take CPS 5745 in Fall 2025. However, students who took CPS 4745 in Fall 2023 cannot take CPS 5745 in Fall 2024, as the two courses were co-listed at that time and shared the same teaching content and exams.

In both courses, students will learn about online visualization design and development, gaining hands-on experience. Both courses emphasize development using JavaScript, PHP and MySQL, which involves a significant amount of coding. If you don't like coding, please do NOT take these two courses. CPS 4745 is a required course of B.S. Computer Science (Data Science Option). Students are encouraged to take CPS 4721/5721 (Data Mining) in the spring semester, if they are interested in Data Science. Please click here to see all CS/IT programs at Kean University.

In CPS 4745, we will cover the following topics:
CPS 4745 Prerequisite
Students are expected to have a solid experience of SQL and PHP MySQL on the first day of class.
The prerequisite is CPS 3740 for CPS 4745 and (CPS 3740. If you have not completed the prerequisite, you should withdraw from the class. The projects focus on online data visualization - web database applications based on CPS 3740 projects.

Note: This course is available only in the fall semester.

Instructor: Dr. Ching-yu (Austin) Huang

Class information:
CPS 4745 Course Description
This course will focus on software design and development to represent data in visual formats from various data sources. Students will learn how to develop applications and present information from the database in understandable and effective methods in charts, graphs, dashboards, and dynamic web pages. Students will do hands-on projects and compare their results with popular visualization software.

CPS 4745 Student Learning Outcomes
Upon completion of this course, the student will be able to:
  1. Explain the key techniques and theory used in visualization, including data models, graphical perception and techniques for visual encoding and interaction.
  2. Present information in an understandable, effective, and aesthetic manner, for the purposes of explaining ideas and analyzing data.
  3. Utilize popular API and software to visualize data
  4. Design visual tools that allow the user to visualize and interact with data from the database.


Books and resources
In addition to the written exams, this combined course requires students to study and present 2 selected D3.js Data Visualization topics and implement 2 big projects on a Linux server. We will use HTML, JavaScript, jQuery, Ajax, PHP MySQL, Python, D3.js, Google Maps, and Google Charts for the projects. The data will be from CSV files and MySQL database.

Requirements - Students will need the followings to do exercsies and assignments:
You should review the basic Unix, SQL, and PHP MySQL before the class starts. We will quickly go through these topics and then focus on JavaScript, jQuery, Ajax, and interactive/automated visualization design. You can refresh Unix commands, SQL and PHP MySQL at the following links:
You can get help from the Samurai program for basic Web Database Programming. Samurai will host group review sessions for some topics related to the web & database. You can see the Samurai schedule and VIRTUAL walk-in hours at Code Samurai Program.
Samples might be used in the Data Visualization class. Please save the source codes in proper extension and use Sublime Text Editor or other good editor to view the source codes. The JavaScript function/method/property of the object will be automatically prompted in the editor.
Upon completion of this course, the student will be able to do the following projects:

COVID-19 Visualization
Other online visualization tools