Jason Rupert wrote:
At one point I believe I heard of an R package that would automatically find the most empty space in a plot, and then that answer could then be used to intelligently place a legend. I would like to try to apply that R package to the contrived example shown below, so thank you for any hints or tips that can be provided.
x = seq(0, 1000, by = 1)
y1_vals<-rnorm(1000, mean = 0, sd = 50)
y2_vals<-rnorm(1000, mean = 25, sd = 40)
y3_vals<-rnorm(1000, mean = 115, sd = 40)

plot(x_vals, y1_vals, pch=22, col="dark red", bg = "dark red", cex =0.3)
points(x_vals, y2_vals, pch=22, col="dark blue", bg = "dark blue", cex =0.3)
points(x_vals, y3_vals, pch=22, col="dark green", bg = "dark green", cex =0.3)

abline(h=0, col="dark red", lwd=1.5, lty=6)
abline(h=25, col="dark blue", lwd=1.5, lty=6)
abline(h=115, col="dark green", lwd=1.5, lty=6)

legend("topright", c("Best Guess 1" , "Best Guess 2", "Best Guess 3"), bg="white", lwd = 
2, title = "Randomness:")

Hi Jason,
The good news is that the emptyspace function found the largest empty space in the plot. The bad news is that there was not nearly enough space to fit the legend:

legend(emptyspace(rep(x_vals,3),c(y1_vals,y2_vals,y3_vals)),
 c("Best Guess 1" , "Best Guess 2", "Best Guess 3"),xjust=0.5,yjust=0.5,
lty=1,col=c(2,4,3))

Note that I had to change the name of the first vector to "x_vals" to get the plot to work.

Jim

______________________________________________
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