The easiest way I can think of to control the spacing (aka "bucketing" or "binning") in a histogram, is to create a user-defined format. The following example creates some fake/random data to demonstrate gchart's automatic binning (with levels=4), and then using a user-defined format (which I call 'myfmt') to make the bins exactly the way you want them ...
do i = 1 to 1000;
value = 500 + 300*rannor(1);
title "Using default gchart ranges";
proc gchart data=foo;
vbar value / type=freq levels=4;