Skip to content
Prev 66136 / 398502 Next

How to create a 'fit' plot

On 18-Mar-05 R_xprt_wannabe wrote:
You can do something on the lines of:

  plot(x,empDF,pch=".") ## for the empirical plot of x

  lines(x0,GPD,lty="solid") ## for the GPD curve

  lines(x0,Pareto,lty="dashed") ## for the Pareto curve

  lines(x0,LogNormal,lty="dotdash") ## for the LogNormal curve

where x0 is a vector of (fairly finely spaced) x-values,
and LogNormal, Pareto and GPD are the corresponding y-values
(at each x0) for the corresponding curves.

Or the latter could be functions which computed the y-values,
given the x-values, in which case you might use

  lines(x0,GPD(x0),lty="solid") ## for the GPD curve

etc.

Since you're apparently beginning with R, you've encountered
one of the more deeply buried (yet commonly required) aspects
of R, namely how the details of a plot are set up.

You can consult the help on 'plot' and 'lines' with

  ?plot
  ?lines

but it takes a bit of poking around to find that you need to
look up

  ?par

to find the details of things like 'lty' as used above.

You may also need to make sure that you get the axes spanning
over good ranges by making your first command

  plot(x,estDF,pch=".",xlim=c(a,b),ylim=c(c,d))

where a and b are the lower and upper limits for x, and c and d
are those for y, since otherwise 'plot' will choose these limits
in its own way depending on the ranges of values in x and in empDF,
which may not be suitable for proper display of the other graphs.
You can omit either or both of 'xlim' and 'ylim'.

Whatever you do about the limits, however, they will be fixed
once and for all once the first plot has been drawn.

Hoping this helps,
Ted.


--------------------------------------------------------------------
E-Mail: (Ted Harding) <Ted.Harding at nessie.mcc.ac.uk>
Fax-to-email: +44 (0)870 094 0861
Date: 18-Mar-05                                       Time: 16:17:12
------------------------------ XFMail ------------------------------