Data Science Texts

Discover what you don't know, and attack your weaknesses!

Computer Graphics

Strongly Recommended Prerequisites

Recommended Prerequisites

Graphics are an important means of conveying information about data. Most data graphics are viewed on a computer, which makes the field of computer graphics an important underlying component of data science. Of course, most data scientists don't really need deep knowledge of computer graphics, especially 3-d animations, in order to do their job. However, those with a particular interest in data visualization may want to dig in (we did)! Plus, computer graphics is a very interesting subject in its own right.

Recommended Books

  1. Computer Graphics: Principles and Practice

    John F. Hughes, Andries van Dam, Morgan McGuire, David F. Sklar, James D. Foley, Steven K. Feiner, Kurt Akeley

    (Image takes you to Amazon.)

    Key Features

    Key Topics

    • 2D Graphics
    • 3D Graphics
    • Bezier Curves
    • Camera Specifications
    • Color
    • Computing Solutions to the Rendering Equation
    • Convolution
    • Enlarging and Shrinking Images
    • Expressive Rendering
    • Fourier Transform
    • Functions on Meshes
    • Geometry
    • Human Visual Perception
    • Images and Signal Processing
    • Interaction Techniques
    • Light
    • Light Transport
    • Lighting
    • Luminaire Models
    • Meshes
    • Modern Graphics Hardware
    • Motion
    • Probability
    • Rasterization
    • Ray Casting
    • Ray Optics
    • Reflectance
    • Rendering in Practice
    • Scattering
    • Shaders
    • Shading
    • Smoothing
    • Spatial Data Structures
    • Splines
    • Standard Approximations
    • Textures
    • Transformations
    • Translucency
    • Visibility Determination
    • Volumetric Models

    Description

    This is the canonical book on computer graphics. It is enormous. It is so enormous, in fact, that it requires both a table of contents and an abbreviated table of contents in case you're in a hurry. Much of the book is taken up by techniques for rendering fancy 3D graphics, but there is also a lot of information relevant to data science. In particular, we found the chapters on human visual perception, image processing, and modern graphics hardware interesting. There are exercises for most of the chapters. The code used is a hodgepodge of C#, C++, and assorted other languages, so it may be hard to play around with.