Introduction xv
This chapter covers mathematical basics for 2D graphics programming. 2D matrices and
transformations in homogeneous space are discussed, including translation, scaling, reflection, and
rotation. These 2D matrices and transformations allow a C# application to perform a wide variety
of graphical operations on graphics objects in a simple and consistent manner.
Chapter 3, 2D Line Charts
This chapter contains instructions on how to create elementary 2D X-Y line charts. It introduces
basic chart elements including chart area, plot area, axes, title, labels, ticks, symbols, legend, etc.
These basic chart elements are common in the other types of charts, as well.
Chapter 4, Specialized 2D Charts
This chapter covers the specialized charts that are often found in commercial chart packages and
spreadsheet applications. These specialized charts include bar charts, stair-step charts, stem charts,
charts with error bars, pie charts, area charts, polar charts, as well as stock charts.
Chapter 5, 3D Matrices and Transformations
This chapter extends the concepts described in Chapter 2 into the third dimension. It explains how
to define 3D graphics objects, and how to translate, scale, reflect, and rotate these 3D objects. It
also describes the transformation matrices that represent projections and transformations that
allow you to view 3D graphics objects on a 2D screen. Unlike 2D, there is no 3D matrix class
defined in C# and GDI+. This chapter includes instructions on how to create these 3D
transformation matrices with C#.
Chapter 6, 3D Charts
This extensive chapter begins with a description of the coordinate system that is used in 3D charts
and graphics, and shows you how to create the 3D coordinate axes, tick marks, axis labels, and
grid lines. It then explains techniques on how to create a wide variety of 3D charts that include 3D
line charts, 3D mesh and surface charts, contour charts, 3D bar charts, 4D slice charts, and 3D
combination charts. In creating these charts, a few specialized techniques, including Z-order, are
used to manipulate the data displayed on your 2D computer screen.
Chapter 7, Charts and User Controls
This chapter shows you how to put 2D and 3D chart applications into a custom user control, and
how to use such a control in your C# applications. It begins by explaining the basics of the custom
user controls in a C# Windows application, including how to provide the design-time support to
the controls. Then, it describes the detailed procedure for creating the custom user controls for 2D
and 3D chart applications, and demonstrates how to use these controls in real-world C#
applications.
Chapter 8, DataGridView and Chart User Controls
This chapter consists of a discussion on the basics of the DataGridView and the possibility of
combining it with the chart controls to create spreadsheet-like chart applications. It shows how to
implement spreadsheet-like interface in which the data is displayed in the DataGridView
control; the displayed data in the DataGridView is plotted in the chart user controls; and the
direct interaction is allowed between the DataGridView and the Chart controls.
Chapter 9, Excel Charts in C# Applications