automatic scatter marker size

Hi, I would like to show color maps of various shapes such as hexagons
or squares. I've been able to do this with the scatter function but I'm
having trouble with the size argument. I always have to adjust the size
of my window until the shapes line up just how I want them to.

I realize size is specified in points^2, and that my figures default to
80 DPI and that the default figure size is 8" x 6", which should
translate to 640x480. What I can't figure out is how to convert any of
these to the data axis. I want to have one square centered at (0.5,0.5)
with a side-length of 1 that exactly touches a square at (1.5,0.5), but
to do this, I have to guess and check until I zero in on a size=2000.
The square root of that is 44.72 points. Where the heck does this come
from? How can I choose my marker size automatically based on the figure
size and DPI so that my data looks right?

It's a problem when I want to make lots of colormaps in subfigures, then
I have to guess and check until the size is right. It's especially
difficult with hexagon maps! Anyway, I've struggled with this long
enough. I read these pages but they didn't help enough.

http://www.scipy.org/Cookbook/Matplotlib/AdjustingImageSize
http://www.scipy.org/Cookbook/Matplotlib/Transformations

Any ideas or suggestions? Thanks in advance!
-Nick