在SAS中显示地图

SAS9.0版中的地图数据,map.world中居然没有关于国家的信息.没有国家的信息,只有county ID,谁知道哪一个ID表示哪一个国家呢.

首先在http://support.sas.com/rnd/datavisualization/mapsonline/html/updates.html下载world的升级补丁.将下载后的文件解压至某个地方,假设是D盘.其中有一个文件是world_24oct05.cpt.

然后将数据导入library

proc cimport infile='d:"world_24oct05.cpt' lib=work;

 run;

work中有一个Name文件,每一个countryID对应有一个国家的名字,这下好办了.另外还有一个世界地图的文件world.

 

 proc gmap map=work.world data=work.names;

 id id; choro cont/discrete;

 run;

其中ID是国家的ID,而Cont是指各大洲.

  

生成日本地图

data japan;
merge maps.japan maps.japan2;
by ID;
run;

proc sort data=japan;
by region;
run;
proc gremove
data=japan
out =japan1;
by region;
id region;
run;
data japan2;
 set japan1;
   if region='Chubu' then frequency=4714;
   else
   if region='Tohoku' then frequency=4374;
   else
   if region='Kyushu' then frequency=5649;
   else
      if region='Kinki' then frequency=7125;
  else
     if region='Kanto' then frequency=10714;
  else
     if region='Chugoku' then frequency=3477;
 else
    if region='Shikoku' then frequency=2417;
 else
   if region='Hokkaido' then frequency=8325;
   else
      if region='Okinawa' then frequency=7056;
   run;
goptions reset=all;
proc gmap
   map=japan2
   data=japan2
   all;
   id region;
block  frequency/discrete;
run;

posted on 2008-08-25 16:45  zgw21cn  阅读(1377)  评论(2编辑  收藏  举报

导航