![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
3. Graphics
Yorick's graphics functions produce most of the generic kinds of pictures you see in scientific publications. However, providing the perfect graphics interface for every user is not a realistic design goal. Instead, my aim has been to provide the simplest possible graphics model and the most basic plotting functions. If you want more, I expect you to build your own "perfect" interface from the parts I supply.
My dream is to eventually supply several interfaces as interpreted code in the Yorick distribution. Currently, the best example of this strategy is the `pl3d.i' interface, which I describe at the end of this chapter. Not every new graphics interface needs to be a major production like `pl3d.i', however. Modest little functions are arguably more useful; the plh function discussed below is an example.
As you will see, the simplest possible graphics model is still very complicated. Unfortunately, I don't see any easy remedies, but I can promise that careful study pays off. I recommend the books "The Visual Display of Quantitative Information" and "Envisioning Information" by Edward Tufte for learning the fundamentals of scientific graphics.
3.1 Primitive plotting functions | The basic drawing functions. | |
3.2 Plot limits and relatives | Setting plot limits, log scaling, etc. | |
3.3 Managing a display list | The display list model. | |
3.4 Getting hardcopy | How to get it. | |
3.5 Graphics style | How to change it. | |
3.6 Queries, edits, and legends | Seeing legends and making minor changes. | |
3.7 Defaults for keywords | Setting (non-default) defaults. | |
3.8 Writing new plotting functions | Combining the plotting primitives. | |
3.9 Animation | Spielberg look out. | |
3.10 3D graphics interfaces | An experimental interface. |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |