Just Published: The Mathematica Graphics Guidebook
- To: mathgroup at christensen.cybernetics.net
- Subject: [mg469] Just Published: The Mathematica Graphics Guidebook
- From: nb at Eeyore.Stanford.EDU
- Date: Tue, 14 Feb 95 10:11:32 -0800
I am pleased to announce the publication of
The Mathematica Graphics Guidebook
by
Cameron Smith and Nancy Blachman
Published by Addison-Wesley
ISBN 0-201-53280-8
Mathematica is an exceptionally flexible and powerful tool for producing
mathematical graphics. Mathematica makes it easy to create graphs
of functions, plots of data, pictures of geometric solids, and other
mathematical illustrations either with built-in functions or with
simple programs of your own. This book tells you what you need to
know to make the most of the graphics capabilities of Mathematica.
Whether you are a beginner, an experienced user of Mathematica, or even
someone who doesn't use Mathematica at all but wants to use pictures
produced by Mathematica in your publications, you will find information
in this book that will help you.
Cameron Smith, a long-time expert on Mathematica graphics, conceived this
guide to satisfy user demand for more detailed graphics information than
is elsewhere available. This book was written with the assistance of
Nancy Blachman, a well-known author and lecturer on Mathematica. Readers
will find this book offers both a thorough tutorial introduction to
Mathematica graphics and a comprehensive reference manual for the graphics
functions. This book is filled with examples illustrating the software's
graphics capabilities. A DOS disk in the back of the book contains
Mathematica Notebooks with the input needed to reproduce the examples
in this book.
How this Book was Written
Since the original reason for writing this book was the lack of
documentation for many features of Mathematica graphics, you won't
be surprised to learn that Mr. Smith and Ms. Blachman didn't write
the book simply by referring to other printed sources. They started
with Stephen Wolfram's book "Mathematica: A System of Doing Mathematics
by Computer" (Addison-Wesley), but whenever it was vague or unclear, or whenever they saw Mathematica producing results that differed from what
Stephen Wolfram's book led them to expect, they pursued other sources
of information in an attempt to understand fully what was happening so
that they could explain it to you. They interviewed the developers at
Wolfram Research who write and maintain the graphics code in Mathematica.
In a few cases they were even vouchsafed a glimpse of Mathematica's
source code!
They didn't stop there, either. All the information they include in this
book has been substantiated by extensive testing; they created at least
a dozen trial graphics for each one that appears in the book. They
exercised some hitherto unexplored aspects of Mathematica's graphics.
For this reason, the information here records Mathematica's actual
performance. If this book disagrees with other references on some point,
it is safe to assume that the other book is describing what Mathematica
was intended to do, and this book describes what Mathematica actually does.
As Mathematica evolves, this book may fall out of step with future versions,
but, for now, it is as accurate and complete a description of Mathematica's
graphics as you will find anywhere.
Who Should Read This Book
Anyone who uses Mathematica can benefit from the information in this book.
For example, scientists and engineers who work with large data sets find
that a single well-designed plot is far more informative than a huge table
of numbers. Teachers attempting to convey complicated ideas can capture
students' attention by using still and animated displays to enliven
lectures, handouts, and textbooks. Researchers can turn abstruse concepts
into pictures that make mathematics almost tangible, stimulating the
imagination in ways that symbol manipulations never could. One of
Mathematica's greatest strengths is its smooth integration of symbolic,
numerical, and graphical capabilities. Even if your work is primarily
involved with numbers or formulas, you will quickly come to appreciate
the ability to translate your ideas into vivid and accurate images.
The Mathematica Graphics Guidebook
* Provides a hands-on tutorial for using Mathematica graphics
* Contains detailed reference information for all of Mathematica's
built-in graphics functions
* Describes key Mathematica algorithms to show how the software can
be used more effectively to produce desired results
* Includes a 3.5" DOS disk that allows readers to reproduce examples
from the book. This disk is readable on Macintosh, DOS, and Windows-
based computers as well as on workstations.
About the Authors:
Cameron Smith is a recognized authority on Mathematica graphics.
He was formerly affiliated with Wolfram Research, Inc., and he now
consults independently on computer graphics and computer typesetting.
He is a particularly popular resource for authors and publishers
converting Mathematica files to LaTeX and other formats.
Nancy Blachman, the founder of Variable Symbols, Inc., provides
both individual and group training in the use of Mathematica and
teaches Mathematica classes at Stanford University. She is a prolific
author of books, help software, and articles on Mathematica.
The list price for the Mathematica Graphics Guidebook is $39.75. This
guidebook can be ordered from your local bookstore, from Addison-Wesley
(telephone 800-447-2226, fax 617 944 8964), or from Variable Symbols
(telephone 510 652 8462, fax 510 652 8461).
--------------------------------------------------------------------------
Below is the table of contents of the book.
1. The Design of Mathematica's Graphics Commands 1
1.1 Easy to Use 3
1.2 General Purpose 6
1.3 The Evolution of Mathematica's Graphics 7
2. Data Types 9
2.1 Two-Dimensional Graphics Objects 10
2.1.1 Graphics 10
2.1.2 GraphicsArray 12
2.2 Three-Dimensional Graphics Objects 16
2.3 Optimized Surface Graphics Objects 18
Combining SurfaceGraphics Objects 19
Erroneous Values 20
Surface Shading 22
2.4 Mixed 2D and 3D Graphics Objects 22
2.5 Print Forms of Graphics Objects 23
2.6 Displaying Graphics Objects 25
2.6.1 Graphics Option Settings and Show 25
2.6.2 What Show Really Does 27
2.6.3 What Show Returns 28
2.6.4 How Show Combines Objects 28
2.7 Graphics Type Conversions 31
2.7.1 Conversion Quirks 32
2.7.2 Saving Time 34
2.8 Summary 35
3. Graphics Primitives and Directives 37
3.1 Localization 38
3.2 Primitives and Directives for 2D Graphics 39
3.2.1 Colors 40
GrayLevel 40
RGBColor 40
CMYKColor 41
Hue 42
Other Color Specifications 43
Why So Many Systems? 43
3.2.2 Points 44
Point 44
PointSize 44
AbsolutePointSize 45
3.2.3 Lines and Curves 46
Line 46
Circle 46
Thickness and AbsoluteThickness 48
Dashing and AbsoluteDashing 49
3.2.4 Filled Regions 49
Polygon 49
Rectangle 52
Raster 54
RasterArray 57
Disk 57
3.2.5 Text 58
A Quirk in Text Offsets 59
Text in Different Directions 60
Text in Different Fonts 64
Multiple Lines of Text 66
Truncated Text 68
3.2.6 PostScript 69
3.3 Primitives and Directives for 3D Graphics 70
3.3.1 Colors 71
3.3.2 Points 71
3.3.3 Lines 71
3.3.4 Cuboids 72
3.3.5 Polygons 72
Polygon 72
EdgeForm 74
Lighting and SurfaceColor 74
FaceForm 77
3.4 Summary 78
4. Commands for Producing Graphics 79
4.1 Two-Dimensional Function Plotting 80
4.1.1 Plot 81
Plotting More Than One Function 82
Taking Control of Plot 82
4.1.2 ParametricPlot 85
4.1.3 Sampling 86
Using Caution with the Sampling Algorithm 87
Graphing the Same Function on Different Machines 88
Adaptive Sampling 89
Aliasing: One Function Impersonating Another 93
Why Is the Right Half Sometimes Better Than the Left Half? 95
4.1.4 No Plot 97
The Order of Evaluation 97
Single versus Multiple Expressions 100
4.2 Three-Dimensional Function Plotting 102
4.2.1 Plot3D 102
Options Accepted by Plot3D 104
4.2.2 ParametricPlot3D 106
4.2.3 Options Shared by Plot3D and ParametricPlot3D 109
Viewpoint 109
Bounding Box and Axes 112
Lighting 113
4.3 Mixed 2D and 3D Plots 114
4.3.1 ContourPlot 114
4.3.2 DensityPlot 118
4.4 Plotting Data Sets: The ListPlot Functions 121
4.4.1 ListPlot 122
4.4.2 ListPlot3D 124
4.4.3 ListContourPlot and ListDensityPlot 127
4.5 Summary 128
5. Graphics Packages 129
5.1 Working with Packages 130
5.1.1 Loading a Package 130
5.1.2 Package Names 132
5.1.3 Context 132
The Current Context and the Default Context 134
Where to Look for Symbols 134
5.1.4 Forgetting to Load a Package 135
5.1.5 Master Packages 137
Making Your Own Master Packages 140
5.2 A Sampling of Graphics Packages 140
5.2.1 General Graphics Manipulations 142
Colors 142
Combined Graphics 145
Labeled Plots 146
Animations 148
5.2.2 Two-Dimensional Graphics 152
Logarithmic Scales 152
Arrows 153
Splines 155
Filled Plots 155
Complex Mappings 156
5.2.3 Data Graphics 157
Bar Charts and Pie Charts 157
Labeled Data 162
Error Bars 164
Multiple Data Sets 164
5.2.4 Three-Dimensional Graphics 165
Scatter Plots 165
Parametrized Curves and Surfaces 166
Surfaces of Revolution 167
Contour Surfaces 168
Mathematical Solids 169
5.2.5 Mixed 2D and 3D Graphics 171
Curves Defined Implicitly (Plots of Equations) 171
Vector Fields 172
5.2.6 Application Areas 173
Graph Theory and Combinatorics 173
Computational Geometry 173
Maps of the World 173
Mathematica and AutoCAD 176
5.3 Summary 177
6. Coordinate Systems 179
6.1 Two-Dimensional Graphics 180
6.1.1 The Coordinate Systems 180
Object Coordinates 180
Scaled Coordinates 181
Text Coordinates 183
PlotRegion 185
6.1.2 An Extended Example 185
6.1.3 Display of 2D Graphics 188
6.2 Three-Dimensional Graphics 190
6.2.1 Coordinate Systems for Specifying Objects 190
Object Coordinates 190
Scaled Coordinates 190
Text Coordinates 191
6.2.2 Coordinate Systems for Perspective Projection 192
The Theory of Perspective Projection 192
Perspective Projection Coordinates 195
6.2.3 Coordinate Systems for Simulated Illumination 199
6.2.4 Converting Coordinates From Three to Two Dimensions 201
6.3 Summary 203
7. Options 205
7.1 Options Used by All Graphics Functions 206
7.1.1 Options for Scaling Graphics 206
AspectRatio 206
PlotRegion 210
PlotRange 212
7.1.2 Options for Overlays and Underlays 218
Background 219
Prolog 219
Epilog 221
PlotLabel 222
7.1.3 Options for Axes 223
Axes 223
AxesLabel 224
AxesStyle 225
Ticks 226
7.1.4 Options for Generating PostScript Code 229
ColorOutput 229
DefaultColor 232
DefaultFont 233
DisplayFunction 233
StringConversion 235
7.2 Additional Axis Options for 2D Graphics 237
AxesOrigin 237
Frame, FrameStyle, FrameTicks, FrameLabel and RotateLabel 241
7.3 Other 2D Graphics Options 244
GridLines 244
GraphicsSpacing 246
7.4 Options Used by All 3D Graphics 247
7.4.1 The Bounding Box 247
AxesEdge 247
Boxed 248
BoxRatios 249
BoxStyle 250
FaceGrids 251
7.4.2 Polygon Shading 252
Shading and Lighting 252
AmbientLight and LightSources 254
7.4.3 Perspective Projection 261
ViewPoint 261
ViewVertical 263
ViewCenter 263
SphericalRegion 264
7.5 Special 3D Graphics Options 267
7.5.1 Options for Graphics3D Objects 267
PolygonIntersections 267
RenderAll 269
7.5.2 Options for Special 3D Graphics Types 269
ColorFunction 269
MeshRange 271
7.5.3 Mesh Options for Surface and Density Graphics 272
7.5.4 Options for Contour Plots 274
ContourLines 274
Contours 275
ContourShading 276
ContourSmoothing 276
ContourStyle 277
7.5.5 Options for SurfaceGraphics 278
HiddenSurface 278
ClipFill 279
7.6 Options for Plotting Functions 280
7.6.1 Options Used by All Sampling Plot Functions 281
Compiled 281
PlotPoints 282
7.6.2 Options Controlling Two-Dimensional Adaptive Sampling 282
MaxBend 282
PlotDivision 283
7.6.3 A Line Style Option for Two-Dimensional Plotters 284
7.6.4 A Special Option for ListPlot 285
7.7 Default Values for Graphics Options 285
DefaultFont 285
Display and DisplayFunction 286
SoundDisplay and SoundDisplayFunction 286
StringConversion 286
7.8 Obsolete Graphics Options 287
7.9 Option Manipulation 288
7.9.1 Commands for Reading Option Settings 289
Options 289
FullOptions and FullGraphics 291
PlotRange as a Function 293
7.9.2 Commands for Setting Options 294
SetOptions 294
Show 295
Options 295
ClearAll and Remove 296
7.9.3 Commands for Filtering Options 296
7.10 Summary 298
Appendix: Code to Produce the Figures 299
Tables of Graphics Symbols 317
Suggested Readings 327
Index 331
Colophon 341
----- End Included Message -----