jcano wrote on 12/01/2011 12:12:03 PM:

> Hi all
> 
> How can I change the limits (xlim or ylim) in a plot that has been 
already
> created?
> 
> For example, consider this naive example 
> curve(dbeta(x,2,4))
> curve(dbeta(x,8,13),add=T,col=2)
> 
> When adding the second curve, it goes off the original limits computed 
by R
> for the first graph, which are roughly, c(0,2.1)
> 
> I know two obvious solutions for this, which are:
> 1) passing a sufficiently large parameter e.g. ylim=c(0,4) to the first
> graphic
> curve(dbeta(x,2,4),ylim=c(0,4))
> curve(dbeta(x,8,13),add=T,col=2)
> 
> or 
> 
> 2) switch the order in which I plot the curves
> curve(dbeta(x,8,13),col=2)
> curve(dbeta(x,2,4),add=T)
> 
> but I guess if there is any way of adjusting the limits of the graphic 
"a
> posteriori", once you have a plot with the undesired limits, forcing R 
to
> redraw it with the new limits, but without having to execute again the
> "curve" commands
> 
> Hope I made myself clear
> 
> Best regards and thank you very much in advance


There is no way to adjust the limits of the plot "a posteriori".
You could set it up so that the limits of the plot are determined directly 
from the data you are plotting.

x <- seq(0, 1, 0.01)
y.range <- range(dbeta(x, 2, 4), dbeta(x, 8, 13))
curve(dbeta(x, 2, 4), ylim=y.range) 
curve(dbeta(x, 8, 13), ylim=y.range, add=T, col=2) 

Jean
	[[alternative HTML version deleted]]

