- asp:
 If asp is a finite positive value then the window is
      set up so that one data unit in the x direction is equal in length to
      asp \(\times\) one data unit in the y direction.
Note that in this case, par("usr") is no longer
      determined by, e.g., par("xaxs"), but rather by asp and
      the device's aspect ratio.  (See what happens if you interactively
      resize the plot device after running the example below!)
The special case asp == 1 produces plots where distances
      between points are represented accurately on screen.  Values with
      asp > 1 can be used to produce more accurate maps when using
      latitude and longitude.
Note that the coordinate ranges will be extended by 4% if the
  appropriate graphical parameter xaxs or yaxs has value
  "r" (which is the default).
To reverse an axis, use xlim or ylim of the form
  c(hi, lo).
The function attempts to produce a plausible set of scales if one or
  both of xlim and ylim is of length one or the two values
  given are identical, but it is better to avoid that case.
Usually, one should rather use the higher-level functions such as
  plot, hist, image, …,
  instead and refer to their help pages for explanation of the
  arguments.
A side-effect of the call is to set up the usr, xaxp and
  yaxp graphical parameters.  (It is for the latter two that
  lab is used.)