Re: [R] plotting

From: Marc Schwartz <MSchwartz_at_medanalytics.com>
Date: Thu 10 Mar 2005 - 11:52:14 EST

On Wed, 2005-03-09 at 14:28 -0400, Owen Buchner wrote:
> I have two questions for you. Firstly I'm having troubles trying to plot more
> then 1 graph. I'm attempting to make a plot with 9 panels, but i have no clue
> what type of code to use.

If you are using R's base graphics and you want 9 plots arranged vertically, you can use par(mfrow = 9) before your first plot.

The first plot will then be in the top panel (row).

Each successive call to a high level plot function [ie. plot(), boxplot (), barplot()] will draw the plot in the next panel (row) down.

See ?par for more information and some examples.

Another option, for base graphics, is to use the layout() function and yet another, is to use the grid/lattice packages for creating "Trellis" type plots.

> Secondly i was wondering if there was some code to generate random numbers
> between two defined intervals and then have R chose one randomly in a program.
> If you could answer either of these questions for me I would appreciate it.

If you want to generate random numbers from a pre-specified sequence of numbers between some min and max values (each number having an equal probability of being selected) and then return one of them, you can use the sample function:

  sample(min:max, 1)

See ?sample for more information. Note that the sequence need not be all integers:

> sample(seq(1, 10, 0.5), 1)

[1] 2.5

If you want the random numbers to be within some min:max set of limits, such that:

  min <= x <= max

each 'x' having an equal probability of being selected and then return one of the numbers, use runif():

  runif(1, min, max)

See ?runif for more information.

HTH, Marc Schwartz



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Thu Mar 10 19:14:18 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:30:42 EST