I've made a few small changes to your code, to get the map you wanted...
I created a numeric variable containing the value of the last number in your 'data' field, and then created a Y/N variable saying whether or not to color the map area yellow...
val3=.; val3=scan(data,3,'/'); if val3>9.7 then yellow='Y'; else yellow='N';
I used the SAS tranwrd() function to convert the word 'County' to a blank...
text=tranwrd(county_name,'County','');
I added pattern statements so gmap will use white & yellow for the 'N' and 'Y' values of the yellow variable ...
pattern1 v=s c=white; pattern2 v=s c=yellow;
And I had gmap use the yellow variable to color the map...
choro yellow / nolegend
Here's the complete code:
data sample(rename=(county=county_name)); input County $19. @21 Data $8.; /* determine the name of the county to merge with MAPS.CNTYNAME to obtain the county FIPS code */ countynm=upcase(transtrn(county,'County','')); val3=.; val3=scan(data,3,'/'); if val3>9.7 then yellow='Y'; else yellow='N'; datalines; Adams County 1/2/7.3 Asotin County 1/2/2.7 Benton County 1/2/9.2 Chelan County 1/2/9.7 Clallam County 1/2/19.8 Clark County 1/2/5.8 Columbia County 1/2/7.4 Cowlitz County 1/2/5.5 Douglas County 1/2/9.5 Ferry County 1/2/12.4 Franklin County 1/2/7.3 Garfield County 1/2/3.3 Grant County 1/2/6.5 Grays Harbor County 1/2/6.5 Island County 1/2/12.2 Jefferson County 1/2/10 King County 1/2/8.5 Kitsap County 1/2/10.4 Kittitas County 1/2/8.1 Klickitat County 1/2/3.4 Lewis County 1/2/6.7 Lincoln County 1/2/10.4 Mason County 1/2/8.5 Okanogan County 1/2/11.5 Pacific County 1/2/3.4 Pend Oreille County 1/2/11 Pierce County 1/2/9.8 San Juan County 1/2/9.6 Skagit County 1/2/16.9 Skamania County 1/2/7.1 Snohomish County 1/2/12.1 Spokane County 1/2/9.9 Stevens County 1/2/12.4 Thurston County 1/2/11.6 Wahkiakum County 1/2/5.5 Walla Walla County 1/2/5.4 Whatcom County 1/2/25.9 Whitman County 1/2/5.7 Yakima County 1/2/4.5 ; run; proc sort; by countynm; data sample2(drop=countynm); merge sample maps.cntyname(where=(state=53) keep=state countynm county); by countynm; run; /* project a county map of Washington */ proc gproject data=maps.counties out=wa; where state=53 ; id state county; run; /* make the annotate macros available */ %annomac; /* determine the visual center of the county */ %centroid(wa,center,state county); /* create an annotate data set to place the label */ data anno; merge sample2 center; by state county; retain xsys ysys '2' when 'a' function 'label' color 'black' size 1; length text $20; text=data; position='5'; output; text=tranwrd(county_name,'County',''); position='8'; output; run; pattern1 v=s c=white; pattern2 v=s c=yellow; proc gmap data=sample2 map=wa; id state county; choro yellow / nolegend anno=anno; run; quit;
... View more