Data visualization with SAS programming

proc sgplot with 2 y axes

Accepted Solution Solved
Reply
New Contributor
Posts: 3
Accepted Solution

proc sgplot with 2 y axes

Hi,

 

I am trying to create a plot with two y axes. I used proc sgplot and I see the graph generated with color and symbol representation for only one y axis. Is there any way or option to show the color and symbol representation for another Y axis.

 

Thanks in advance.

 



data temp;
input ptno ady value1 value2;
cards;
100 1 10 12
100 5 15 16
100 8 20 18
;


ods listing;
proc sgplot data=temp;
scatter x=ady y=value1/group=ptno;
scatter x=ady y=value2/y2axis group=ptno;
yaxis min=0 label='Y1 axis' values=(0 to 20 by 2);
y2axis min=0 label='Y2 axis' values=(0 to 20 by 2);
run;



Accepted Solutions
Solution
‎04-12-2018 08:17 PM
SAS Super FREQ
Posts: 1,047

Re: proc sgplot with 2 y axes

I'm not entirely sure of what you want, but I think you might want separate legends for each plot. Here is an example:

 

data temp;
input ptno ady value1 value2;
cards;
100 1 10 12
100 5 15 16
100 8 20 18
;

ods listing;
proc sgplot data=temp;
scatter x=ady y=value1/group=ptno name="v1";
scatter x=ady y=value2/y2axis group=ptno name="v2";
keylegend "v1" / title="Y Axis" position=bottomleft;
keylegend "v2" / title="Y2 Axis" position=bottomright;
yaxis min=0 label='Y1 axis' values=(0 to 20 by 2);
y2axis min=0 label='Y2 axis' values=(0 to 20 by 2);
run;

View solution in original post


All Replies
Solution
‎04-12-2018 08:17 PM
SAS Super FREQ
Posts: 1,047

Re: proc sgplot with 2 y axes

I'm not entirely sure of what you want, but I think you might want separate legends for each plot. Here is an example:

 

data temp;
input ptno ady value1 value2;
cards;
100 1 10 12
100 5 15 16
100 8 20 18
;

ods listing;
proc sgplot data=temp;
scatter x=ady y=value1/group=ptno name="v1";
scatter x=ady y=value2/y2axis group=ptno name="v2";
keylegend "v1" / title="Y Axis" position=bottomleft;
keylegend "v2" / title="Y2 Axis" position=bottomright;
yaxis min=0 label='Y1 axis' values=(0 to 20 by 2);
y2axis min=0 label='Y2 axis' values=(0 to 20 by 2);
run;
New Contributor
Posts: 3

Re: proc sgplot with 2 y axes

Thank you. It worked as expected. Sorry for not being much clear.
☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 133 views
  • 0 likes
  • 2 in conversation