Here is a GTL example from a colleague that demonstrates how to create a "splitchar" axis. The keys here are splitting the text in the datastep, turning off the axis tick values, and using a blockplot to render the text.
proc template;
define statgraph tickvaluewrap;
begingraph ;
layout lattice / column=1 rowgutter=0 rowweights=(.85 .15)
columndatarange=union;
columnaxes;
columnaxis / offsetmin=.11 offsetmax=.11 display=none;
endcolumaxes;
barchart x=question y=answer / ;
blockplot x=question block=line / class=n display=(values) valuehalign=center;
endlayout;
endgraph;
end;
run;
data survey;
length line $20;
input Answer Question $3-70;
n=1;
line= scan(question,n,"~");
do while( lengthn(line) > 0 );
output;
n+1; answer=.;
line= scan(question,n,"~");
end;
datalines;
3 #1~How do you~feel today?
4 #2~Would you be~willing to try this~again?
2 #3~Is there some~way to get there~from here?
5 #4~When do you~think this will~be finished,~today?
run;
proc sgrender data=survey template=tickvaluewrap;
run;