Math 250 Course Page

MATH 250: Mathematical Data Visualization

San Jose State University, Spring 2023
visualization of MNIST digit 1

Course description [syllabus]

This is a graduate-level course on dimension reduction and data visualization. Dimensionality reduction methods to be covered include PCA, MDS, ISOmap, LLE, Laplacian Eigenmaps, and LDA. The course is 70% theory (linear algebra) and 30% programming (for matrix computing and data plotting).


There is no required textbook, but the instructor will provide notes on each covered topic.

The following are recommended readings for further learning:

  • Probabilistic Machine Learning: An Introduction [draft copy], by Kevin Patrick Murphy. MIT Press, March 2022. 
  • Foundations of Data Science [January 2018 version], Avrim Blum, John Hopcroft, and Ravindran Kannan. Cambridge University Press; 1st edition (January 1, 2020).

Technology and equipment requirements

  • Canvas: Zoom recordings, assignments and grades will be posted in Canvas (accessible via
  • Piazza: The class will use Piazza as the bulletin board. Please post all course-related questions there. 
  • Computing: The course uses MATLAB as the main programming software.
  • Equipment: Students should have access to a scanner (physical or cell phone app) in order to scan and submit their work.

Course progress

Slides are being continuously updated from Spring 2022. You are suggested to download a new copy right before each class (remember to refresh your browser).

 Date  Lecture Slides  Additional Resources  Homework Assignments

 Course introduction and overview [slides

 [Math 39 webpage] [MATLAB Onramp

 Hw0 (Due: 2/2, Thurs., 11:59pm)


 Basic matrix algebra [slides]

 [Instructor's notes]  Hw1 (See Canvas)

 Matrix computing in MATLAB [slides]

 [Matrices and Arrays[Linear Algebra Documentation]


 Data sets and their visualization in 3D [slides

 [Types of MATLAB Plots] [MATLAB Plot Gallery]



 Rayleigh quotients [slides] [gradients]

 [Prof. Croot's notes] [MATLAB demonstration]  Hw4 

 Singular value decomposition [slides]

 [Stanford CS168 lecture on matrix SVD]  Hw5  

 Generalized inverse and pseudoinverse [slides]

 [Prof. Sawyer's notes] [Prof. Laub's notes]


 Matrix norm and low-rank approximation [slides]

 [Prof. Rabusseau's notes]


 Principal component analysis (PCA) [slides]

 [A tutorial on PCA]


 Linear discriminant analysis (LDA) [slides]

 Prof. Olga Veksler’s lecture


 Multidimensional Scaling (MDS) [slides]

 A book chapter on MDS

 Hw10 (optional)

 ISOmap [slides]

 Original paper (Science, 2000) [website]

 Hw9 (see Canvas)

 Laplacian Eigenmaps [slides]

 Original paper (Neural Computation, 2003)

 Hw10 (see Canvas)

More learning resources

MATLAB resources

Data sets

Useful course websites 

Instructor feedback

Your feedback at any time is encouraged and greatly appreciated, and will be seriously considered by the instructor for improving the course experience for both you and your classmates. Please submit your annonymous feedback through this page.