Dear,
In the output shown in the attachment, some of column values are truncated. How to modify my template code to avoid truncation.
Thank you
My value in call pgm is
"Prior treatment with same class of chemotherapy in the adjuvant or neoadjuvant setting (IVRS)"
The output shows "Prior treatment with same class of chemotherapy in the adjuvant or neoadjuvant setting (IVRS"
%let colwgt=(0.56 0.08 0.04 0.10 0.22);
%let tickvaluelist=%str(0.1 1.0 10.0);
ODS PATH work.templat(update) sasuser.templat(read) sashelp.tmplmst(read);
proc template;
define statgraph Forest_HighLow;
dynamic _color _headercolor;
begingraph / designwidth=800px designheight=750px;
layout lattice / columns=5 columnweights=&colwgt;
/*--Column headers--*/
sidebar / align=top;
layout lattice / rows=1 columns=5 columnweights=&colwgt
backgroundcolor=_headercolor opaque=true;
entry " ";
entry textattrs=(size=7.99 weight=bold) "&_test_label";
entry textattrs=(size=7.99 weight=bold) "&_clm_label";
entry textattrs=(size=7.99 weight=bold) "95% CI";
entry " ";
endlayout;
endsidebar;
/*--First column: subgroup label */
layout overlay / walldisplay=none
xaxisopts=(display=none linearopts=(viewmin=0 viewmax=4))
yaxisopts=(reverse=true display=none tickvalueattrs=(weight=bold)) ;
highlowplot y=rownum low=zero high=zero / highlabel=heading
lineattrs=(thickness=0) labelattrs=(weight=bold size=7.99);
highlowplot y=rownum low=zero high=one / highlabel=subgroup
lineattrs=(thickness=0) labelattrs=(size=7.99);
endlayout;
/*--Second column: sample size --*/
layout overlay / xaxisopts=(display=none)
yaxisopts=(reverse=true display=none) walldisplay=none;
scatterplot y=rownum x=zero / markercharacter=n
markercharacterattrs=graphvaluetext(size=7.99);
endlayout;
/*--Third column: point estimate --*/
layout overlay / xaxisopts=(display=none)
yaxisopts=(reverse=true display=none) walldisplay=none;
scatterplot y=rownum x=zero / markercharacter=hr
markercharacterattrs=graphvaluetext(size=7.99);
endlayout;
/*--Fourth column: CI --*/
layout overlay / xaxisopts=(display=none)
yaxisopts=(reverse=true display=none) walldisplay=none;
scatterplot y=rownum x=zero / markercharacter=ci
markercharacterattrs=graphvaluetext(size=7.99);
endlayout;
/*--Fifth column: plot of point estimate and CI --*/
**Added log scale **;
layout overlay / xaxisopts=(type=log offsetmin=0.1 offsetmax=1 label="&_lgd_label"
labelattrs=(size=7.99 weight=bold)
logopts=(base=10 tickintervalstyle=logexpand
%if &analdata eq adrs %then %do;
minorticks=false viewmin=40 viewmax=40))
%end;
%else %do;
minorticks=false viewmin=40 viewmax=40))
%end;
yaxisopts=(reverse=true display=none) walldisplay=none;
highlowplot y=rownum low=low high=high ;
scatterplot y=rownum x=hrr /
markerattrs=(symbol=squarefilled size=7.99);
referenceline x=&ref_line_x_coor ;
endlayout;
endlayout;
endgraph;
end;
run;
I would use AXISTABLE as shown in this paper by one of the developers Sanjay Matange.
https://www.sas.com/content/dam/SAS/support/en/sas-global-forum-proceedings/2018/2180-2018.pdf
There is specific forest plot example.
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.