MATLAB: Basic Graphics Question: Array of 1’s and 0’s

graphics

Hello all,
I have a pretty basic question, yet I'm still spinning my wheels a bit. Perhaps someone can help me.
I have an array of ones and zeros. The ones form a rectangular blocks. I would like generate a figure that shades the regions with 1's black and leaves the 0's white.
Ex:
foo = [0 0 0 0; 0 1 1 0; 0 1 1 0; 0 0 0 0; 0 1 1 0; 0 1 1 0; 0 0 0 0];
If plotting foo, I'd like to have a white rectangle with two black squares inside of it.
Thanks your assistance,
Will

Best Answer

imagesc(~foo)
colormap(gray)
or colormap('gray') just to be safe, in case you overwrite the variable gray with something else.