>> << Ndx Usr Pri Phr Dic Rel Voc !: wd Help User

# Plot Source

The following is an overview of the plot source. To access this from the Project Manager, copy to the source into any directory, preserving subdirectories, and define a folder `Plot` that points to the source directory.

The source is in three subdirectories:

`base` has the core utilities.

`out` has the output definitions (isi, eps and pdf).

`type` has code for the specific plot types, 2d and 3d.

# Main Subdirectories

`base\pd`

This defines the core user function, `pd`.

Input commands are stored in the `Pcmd` command buffer, with minimal parsing.

Output commands activate drawing. These call output verbs `isi_show`, `pdf_show` etc. Output commands are not stored in `Pcmd`.

`base\make`

This defines the core plotting routine, `make`. This is called by the output verbs, with an argument of output type and plot size. Output type is used only for determining font metrics.

The output of `make` is a global `Plot` that defines the plot. The output verbs then step through this global to create the actual drawing.

`make` method:

1. the `Pcmd` block is split into `new` or `use` command blocks. Each such is drawn independently by `makenew`.
2. `makenew` first determines several values for the command block, including dimensions, data, axes, text.

These in turn are used to determine the plot decorations (labels, ticmarks etc).

Each command block is then split into `type` blocks, and each such is drawn by `maketype`.

`maketype` then sets the remaning plot options, and calculates the plots for each type.

# Other Subdirectories

`base\axis` axis labels and ticmarks.

`base\font` all font handling.

`base\key` keys.

`base\layout` main layout calculations, see Plot Layout.

>> << Ndx Usr Pri Phr Dic Rel Voc !: wd Help User