Proc gmap prints a map and data associate with the map.
SAS library has got maps for most of the world's countries, but its on country level.
If you want to have finer level of map, or some custom map in what ever shape, you can create your own map.
SAS use a X-Y cooridnate system, so if you have only the lat and long, it needs to be convert to x-y system first.
The following shows how to convert lat long to x-y:
data map_latlong;
id=1; lat=50; long=80;
run;
proc gproject latlon degrees westlong
project=proj4 to="EPSG:32618"
data=map_latlong out=map_xy;
id id;
run;
proc print data=map_xy;
run;
here the epsg:3857 is the spatial reference system (point zero) used by Google. You may change it to other location (the centre of your map).
To create your custom map, you need to specify the edge points for each polygon in the map. A polygon is identified by id.
In the below example there are two squares (id 1 and 2)
data map_sample;
input id x y;
datalines;
1 0 0
1 1 0
1 1 1
1 0 1
2 1 1
2 2 1
2 2 2
2 1 2
;
run;
You may also assosicate data value with each of the polygon, so sas can color the polygon accordingly.
data data_sample;
input id value;
datalines;
1 100
2 200
;
run;
proc gmap map=map_sample data=data_sample;
id id;
choro value;
run;