Hi there,
The table below represents the distributions of age for each area. So, the variable _1 represents how many people are 1 years old, the variable _2 how many people are 2 years old, and so on. The age goes up to 90 years old.
I want to create a graph that shows the distribution of age for each area. One chart as the below for each area:
Is there any way to do so? Hope it makes sense.
Thanks!
How about something like this?
data have;
call streaminit(12345);
length name $20;
array p[5];
drop i;
do NAME="United Kingdom","Great Britan", "England";
do i=1 to 5;
p[i]=round(rand('UNIFORM')*i*1000);
end;
output;
end;
run;
data forplot;
array p[5] p1-p5;
set have;
do i=1 to dim(p);
Pop=vname(p[i]);
Value=p[i];
output;
end;
keep name pop value;
run;
proc sgplot data=forplot;
vbar pop/ response=value;
by Name notsorted;
run;
How about something like this?
data have;
call streaminit(12345);
length name $20;
array p[5];
drop i;
do NAME="United Kingdom","Great Britan", "England";
do i=1 to 5;
p[i]=round(rand('UNIFORM')*i*1000);
end;
output;
end;
run;
data forplot;
array p[5] p1-p5;
set have;
do i=1 to dim(p);
Pop=vname(p[i]);
Value=p[i];
output;
end;
keep name pop value;
run;
proc sgplot data=forplot;
vbar pop/ response=value;
by Name notsorted;
run;
Thanks! Excellent implementation!
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.