Course Syllabus

Published

November 5, 2024

Modified

June 15, 2026

1. Course Description

Data structures and data types. Data wrangling. Data import and export. Types of data visualization. Programming for data visualization in business. Popular packages. Applications and case studies.

2. Course Learning Outcomes (CLO): Students are able to

  1. write programs and fix program errors.

  2. create reports for data visualization with software.

  3. analyze and visualize data in business.

3. Course Contents

Week Day Date Time Room Content Hour
1 Mon 22/06/2026 14:30-16:00 RB3203 Course Introduction and Software for Study 1.5
1 Thu 25/06/2026 14:30-16:00 RB3203 Markdown Language: Quarto (1) (Use Computer) 1.5
2 Mon 29/06/2026 14:30-16:00 RB3203 Markdown Language: Quarto (2) (Use Computer) 1.5
2 Thu 02/07/2026 14:30-16:00 RB3203 Data Structures and Types: Vector (1) 1.5
3 Mon 06/07/2026 14:30-16:00 RB3203 Data Structures and Types: Vector (2) 1.5
3 Thu 09/07/2026 14:30-16:00 RB3203 Data Structures and Types: Matrix (1) 1.5
4 Mon 13/07/2026 14:30-16:00 RB3203 Data Structures and Types: Matrix (2) 1.5
4 Thu 16/07/2026 14:30-16:00 RB3203 Midterm Exam 1/2 1.5
5 Mon 20/07/2026 14:30-16:00 RB3203 Data Structures and Types: Data Frame (1) 1.5
5 Thu 23/07/2026 14:30-16:00 RB3203 Data Structures and Types: Data Frame (2) 1.5
6 Mon 27/07/2026 14:30-16:00 RB3203 The class is canceled.
6 Thu 30/07/2026 14:30-16:00 RB3203 Data Structures and Types: XTS (1) 1.5
7 Mon 03/08/2026 14:30-16:00 RB3203 Data Structures and Types: XTS (2) 1.5
7 Thu 06/08/2026 14:30-16:00 RB3203 Data Wrangling (1) 1.5
8 Mon 10/08/2026 14:30-16:00 RB3203 Data Wrangling (2) 1.5
8 Thu 13/08/2026 14:30-16:00 RB3203 Dashboard (1) (Use Computer) 1.5
9 - 17/08/2026-23/08/2026 - - Reading Week (No Class)
10 - 24/08/2026-30/08/2026 - TBA Midterm Exam Week (Midterm 2/2) 2
11 Mon 31/08/2026 14:30-16:00 RB3203 Dashboard (2) (Use Computer) 1.5
11 Thu 03/09/2026 14:30-16:00 RB3203 Base Plot (Histogram and Density) 1.5
12 Mon 07/09/2026 14:30-16:00 RB3203 Base Plot (Bar Plot) 1.5
12 Thu 10/09/2026 14:30-16:00 RB3203 Base Plot (Mathematical Functions) 1.5
13 Mon 14/09/2026 14:30-16:00 RB3203 Base Plot (Scatter Plot) 1.5
13 Thu 17/09/2026 14:30-16:00 RB3203 Base Plot (Modifying Plots) 1.5
14 Mon 21/09/2026 14:30-16:00 RB3203 Final Exam 1/2 1.5
14 Thu 24/09/2026 14:30-16:00 RB3203 Financial Plot (1) 1.5
15 Mon 28/09/2026 14:30-16:00 RB3203 Financial Plot (2) 1.5
15 Thu 01/10/2026 14:30-16:00 RB3203 ggplot2 (Histogram and Density) 1.5
16 Mon 05/10/2026 14:30-16:00 RB3203 ggplot2 (Bar Plot) 1.5
16 Thu 08/10/2026 14:30-16:00 RB3203 ggplot2 (Scatter Plot) 1.5
17 Mon 12/10/2026 14:30-16:00 RB3203 ggplot2 (Modified Plot) 1.5
17 Thu 15/10/2026 14:30-16:00 RB3203 Popular Packages (Patchwork and Plotly) 1.5
19 Mon 26/10/2026 15:30-18:30 TBA Final Exam 2/2 2
ImportantHow to Calculate Class Attendance Score

Let \(K\) be the total number of classes you are absent from.

\[\text{Class Attendance Score (\%)} = \begin{cases} 10\%, & \text{if } K = 0, 1, \text{or } 2 \\ 12 - K\%, & \text{if } K = 3, 4, 5, \ldots, 12 \\ 0\%, & \text{if } K > 12 \quad \text{(Grade = F according to CMU regulations)} \end{cases}\]

Exceptions:
Absences will not be counted in the following cases:

  • Medical reasons with an official medical certificate

  • Participation in university-related activities with proper documentation

  • Other cases as deemed appropriate by the instructor

ImportantExam Details

This course includes 4 exams, and each exam is worth 15% of the total grade:
5% for multiple-choice questions and 10% for coding.

Exam 1 Topics:

  • Chapter 2: Quarto
  • Chapter 3: Vectors
  • Chapter 4: Matrices

Exam 2 Topics:

  • Chapter 5: Data Frames
  • Chapter 6: XTS
  • Chapter 7: Data Wrangling

Exam 3 Topics:

  • Base R plots:
    • Histogram
    • Mathematical plots
    • Bar plots
    • Scatter plots
    • Modified plots

Exam 4 Topics:

  • ggplot2:
    • Histogram
    • Bar plots
    • Scatter plots
    • Modified plots
    • Patchwork
    • Plotly

4. Textbooks/Supplies/Materials/Equipment/ Technology or Technical Requirements:

  • Laptop or desktop computer with R, Quarto and RStudio software.

  • Wickham, H., & Grolemund, G. (2017). R for data science: Import, tidy, transform, visualize, and model data. O’Reilly Media.

  • Peng, R. D. (2019). R programming for data science. Leanpub.

  • Matloff, N. (2011). The art of R programming: A tour of statistical software design. No Starch Press.

  • Kabacoff, R. I. (2015). R in action: Data analysis and graphics with R (2nd ed.). Manning.

  • Grolemund, G. (2014). Hands-on programming with R: Write your own functions and simulations. O’Reilly Media.

  • Gillespie, C., & Lovelace, R. (2016). Efficient R programming: A practical guide to smarter programming. O’Reilly Media.

  • Wickham, H., Averick, M., Bryan, J., Chang, W., McGowan, L. D., François, R., Grolemund, G., Hayes, A., Henry, L., Hester, J., Kuhn, M., Pedersen, T. L., Miller, E., Bache, S. M., Müller, K., Ooms, J., Robinson, D., Seidel, D. P., Spinu, V., … Yutani, H. (2019). Welcome to the tidyverse. Journal of Open Source Software, 4(43), 1686. https://doi.org/10.21105/joss.01686

  • Wickham, H. (2016). ggplot2: Elegant graphics for data analysis (2nd ed.). Springer. https://ggplot2.tidyverse.org

  • Ryan, J. A., & Ulrich, J. M. (2023). quantmod: Quantitative financial modelling framework. R package version 0.4.25. https://CRAN.R-project.org/package=quantmod

  • Sievert, C. (2020). Interactive web-based data visualization with R, plotly, and shiny. Chapman & Hall/CRC. https://plotly-r.com

  • Pedersen, T. L. (2022). patchwork: The composer of plots. R package version 1.1.2. https://CRAN.R-project.org/package=patchworkhttps://CRAN.R-project.org/package=patchwork

  • Kunst, J. (2023). highcharter: A wrapper for the ‘Highcharts’ library. R package version 0.9.4.1. https://CRAN.R-project.org/package=highcharter

  • Xie, Y., Allaire, J. J., & Grolemund, G. (2018). R markdown: The definitive guide. Chapman & Hall/CRC. https://rmarkdown.rstudio.com

  • Allaire, J. J., Xie, Y., Dervieux, C., McPherson, J., & Iannone, R. (2022). Quarto: Scientific and technical publishing system. https://quarto.org

5. Class Activities

Activity Evaluation Week Scores
Attendance 1-17 10
Project 1 before 7 10
Project 2 before 17 10
Project 3 before 18 10

Midterm exam 1/2

Topics: Quarto, vector, matrices

5 15 (multiple choice 5, coding 10)

Midterm exam 2/2

Topics: Data frame, XTS, Data wrangling

9 15 (multiple choice 5, coding 10)

Final exam 1/2

Topics: Based plot(histogram, barplot, curve, scatter plot, modified plot)

13 15 (multiple choice 5, coding 10)

Final exam 2/2

Topics: ggplot2(histogram bar plot, scatter plot, modified plot, patchwork and plotly)

19 15 (multiple choice 5, coding 10)

6. Grade Evaluation

Grade Score range (PTS) GPA Value Comment
A 80-100 4 Excellent
B+ 74-79 3.5 Very good
B 68-73 3 Good
C+ 61-67 2.5 Above average
C 55-60 2 Average
D+ 49-54 1.5 Below average
D 43-48 1 Poor
F 0-42 0 Fail

7. Remarks

  1. The students must be in class for at least 80 percent of the course to be counted as present. (If you are absent from my class more than 10 times, your grade is F)

  2. Cheating involves actual, intended, or attempted deception and/or dishonest action in relation to any academic work of the University. The consequence will be the award of a mark of zero for the module affected.

  3. The students must read and follow the Chiang Mai University Regulations to ensure that you do not cheat in an exam.