There most definitely is a variable in the Annotations DS named HTML and an example of what one observation may hold would be title='Bluffs Pkwy'. If I put html=html in the Choro statement nothing happens. No error, No warning, no text. I have played around with naming it something different and even specifying the dataset that hold that variable in different positions whether it be the data= , map= or anno=. None of it works. Here is a protion of the code form a totally separate program that still works. The difference is in the one that works I have the text hover over plotted points at to here I want it to hover over the streets.
/* MAP DATASET */
data districtmap;
set map;
where county in(57 111 123 213 227 313);
run;
/*ROADS* - Only need the roads that are located within the square window of the district */
data lat_long_road;
set work.road;
where x between -0.027927437 and -0.012479502 and y between 0.0244506075 and 0.0405140664;
run;
proc sort data=work.districtmap ;
by state county;
run;
/* Procedure that trims all roads that are not INSIDE the map area */
proc ginside data=lat_long_road map=work.districtmap insideonly out=Georgia_roads;
id state county;
run;
%annomac()
data district_roads;
%dclanno
set work.georgia_roads;
by linearid;
%system(2,2,3);
when = 'b';
if first.linearid then function='MOVE';
else function='DRAW';
if mtfcc='S1100' then do;
color='tomato';
size=.4;
end;
else if mtfcc='S1200' then do;
color='lightseagreen';
size=.1;
end;
run;
/* PATIENT DOTS*/
data district_data;
set data;
if county = 115 then delete;
if county in(57 111 123 213 227 313) then output;
else if county not in(57 111 123 213 227 313) and point='L' then output;
run;
data annotate_district_dots(keep=x y state statecode county _status_ urn patient_name patient_type html when text color style size xsys ysys hsys);
%dclanno
length text $60;
length state_fips 5;
set district_data;
html="title='" !! trim(left(patient_name)) !! "'";
where _status_="Found";
/* LABEL(x1, y1, text, color, ang, rot, ht, font, pos)*/
%system(2,2,1);
when='a';
if patient_type="1" then color='crimson';
else if patient_type="2" then color='goldenrod';
else if patient_type="3" then color='dodgerblue';
%label(x,y,point,*,0,0,3.5,'Special',5);
output;
run;
data anno_size;
set work.annotate_district_dots;
if color='dodgerblue' then size=3;
output;
run;
proc sort data=anno_size out=anno_nodup nodupkey;
by urn;
run;
proc sort data=anno_nodup out=annotate_pt_loc ;
by descending patient_type;
run;
/*ROADS + DOTS*/;
data anna_tate;
set annotate_pt_loc district_roads;
run;
/*Legend to show on map*/
data anno_legend;
%dclanno
length text $50;
%system(3,3,1);
%label(3,15,'L',crimson,0,0,6,'Special',5);
%label(5,15,'New Positive',black,0,0,4,'Thorndale AMT',6);
%label(3,10,'M',goldenrod,0,0,6,'Special',5);
%label(5,10,'New to TLBC',black,0,0,4,'Thorndale AMT',6);
%label(3,5,'J',dodgerblue,0,0,6,'Special',5);
%label(5,5,'Previously Entered into Care',black,0,0,4,'Thorndale AMT',6);
output;
run;
goptions reset=all device=png;
ods html path="c:\users\rgclevenger\desktop\SASoutput\Maps" (url=none) file="map.html";
proc gmap data=district_data map=districtmap all anno=anna_tate ;
id state county;
choro state / nolegend
anno=anno_legend
stat=first
cempty=darkgray
woutline=1
;
pattern1 v=s c=A90D9D733;
run;
ods _all_ close;
goptions reset=all;
... View more