R matrix plot with colour threshold and grid

user969113 picture user969113 · Aug 22, 2012 · Viewed 9.4k times · Source

my matrix consists of values between 0 and 100 and has the dimensions of 100 x 100. I basically want to plot this matrix but colour all values above 50 in e.g. red and below in e.g. blue. On top of that I'd like to add a nice grayisch grid like they do it here with ggplot:

http://learnr.wordpress.com/2009/07/15/ggplot2-version-of-figures-in-lattice-multivariate-data-visualization-with-r-part-5/

I am wondering what's the easiest way to achieve that? I am not sure if I want to give ggplot a try as it looks pretty complicated from what I have seen so far. Isn't there any other easy plot function for such a task?

Answer

IRTFM picture IRTFM · Aug 23, 2012

In base graphics it is just:

image(x, col=c("red","blue")[1+(x>50)] )

To add the grid use:

grid(nx=100, ny=100, lty=1)