On Sun, Aug 29, 2010 at 20:00, Worik R <wor...@gmail.com> wrote:

> Is there  a simple way to put a legend outside the plot area for a simple
> plot?
>
> I found... (at http://www.harding.edu/fmccown/R/)
>
> # Expand right side of clipping rect to make room for the legend
> *par(xpd=T, mar=par()$mar+c(0,0,0,4))*
>
> # Graph autos (transposing the matrix) using heat colors,
> # put 10% of the space between each bar, and make labels
> # smaller with horizontal y-axis labels
> barplot(*t*(autos_data), main="Autos", ylab="Total",
>   col=*heat.colors(3), space=0.1, cex.axis=0.8, las=1,
>   names.arg=c("Mon","Tue","Wed","Thu","Fri"), cex=0.8*)
>
> # Place the legend at (6,30) using heat colors
> legend(*6, 30,* names(*autos_data*), cex=*0.8*, fill=*heat.colors(3)*);
>
> But I do not understand
> *par(xpd=T, mar=par()$mar+c(0,0,0,4))*
>
> Anyway it does not work for me when I change...
>
>
> > y1 <- runif(100, max=1, min=0)
> > y2 <- rnorm(100)
> > ylim <- c(min(y1, y2), max(y1,y2))
> > plot(x, y1, pch=1, ylim=ylim)
> > points(x, y2, pch=2)
> > legend("topleft", legend=c("Uniform", "Normal"), pch=c(1,2))
>
> To
>
> > par(xpd=T, mar=par()$mar+c(0,0,0,4))
> > plot(x, y1, pch=1, ylim=ylim)
> > points(x, y2, pch=2)
> > legend(6, 30, legend=c("Uniform", "Normal"), pch=c(1,2))
>

It looks like (6,30) is way outside of the plot area, which is why you don't
see the legend.  I like to use the values of par()$usr (the xlim and ylim of
the current plot) to set the legend position.  This way it is always
relative to the plotting area.  Try this:

par(mar=c(5.1, 4.1, 4.1, 6.1) )
plot(1:10)
legend( par()$usr[2], mean(par()$usr[3:4]), legend=c("Uniform", "Normal"),
pch=c(1,2), xpd=TRUE, xjust=0, yjust=0.5)

And play around with xjust and yjust to get the legend where you want it.
Hope that helps


>
> I do not get to see the legend at all.
>
> I am confused....
>
> cheers
> Worik
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to