Suppose below is the data for which I want to make a plot in SAS EG but with conditions that..
1. An over lapping plots of X and Y when POS=L (i.e. line plot for POS 'L' of Jan 1st and on top of it another line of Jan 31st)
2. Similarly a different Line plot of X and Y when POS='R'
| MeasNo | X | Y | Date | Ano | POS |
| 1 | 10 | 2 | 01JAN16 | 1 | L |
| 2 | 11 | 4 | 01JAN16 | 1 | L |
| 3 | 12 | 3 | 01JAN16 | 1 | L |
| 4 | 13 | 5 | 01JAN16 | 1 | L |
| 5 | 14 | 6 | 01JAN16 | 1 | L |
| 6 | 15 | 3 | 01JAN16 | 1 | L |
| 7 | 16 | 4 | 01JAN16 | 1 | L |
| 8 | 17 | 7 | 01JAN16 | 1 | L |
| 9 | 18 | 8 | 01JAN16 | 1 | L |
| 10 | 19 | 4 | 01JAN16 | 1 | L |
| 11 | 20 | 6 | 01JAN16 | 1 | L |
| 12 | 21 | 3 | 01JAN16 | 1 | L |
| 13 | 22 | 2 | 01JAN16 | 1 | L |
| 14 | 23 | 7 | 01JAN16 | 1 | L |
| 15 | 24 | 9 | 01JAN16 | 1 | L |
| 16 | 25 | 6 | 01JAN16 | 1 | L |
| 17 | 26 | 5 | 01JAN16 | 1 | L |
| 18 | 27 | 4 | 01JAN16 | 1 | L |
| 19 | 28 | 3 | 01JAN16 | 1 | L |
| 20 | 29 | 5 | 01JAN16 | 1 | L |
| 21 | 30 | 4 | 01JAN16 | 1 | L |
| 22 | 31 | 7 | 01JAN16 | 1 | L |
| 23 | 32 | 8 | 01JAN16 | 1 | L |
| 24 | 33 | 7 | 01JAN16 | 1 | L |
| 25 | 34 | 9 | 01JAN16 | 1 | L |
| 26 | 35 | 8 | 01JAN16 | 1 | L |
| 27 | 36 | 6 | 01JAN16 | 1 | L |
| 28 | 37 | 7 | 01JAN16 | 1 | L |
| 29 | 38 | 5 | 01JAN16 | 1 | L |
| 30 | 39 | 4 | 01JAN16 | 1 | L |
| 1 | 10 | 4 | 01JAN16 | 1 | R |
| 2 | 11 | 6 | 01JAN16 | 1 | R |
| 3 | 12 | 5 | 01JAN16 | 1 | R |
| 4 | 13 | 7 | 01JAN16 | 1 | R |
| 5 | 14 | 8 | 01JAN16 | 1 | R |
| 6 | 15 | 5 | 01JAN16 | 1 | R |
| 7 | 16 | 6 | 01JAN16 | 1 | R |
| 8 | 17 | 9 | 01JAN16 | 1 | R |
| 9 | 18 | 10 | 01JAN16 | 1 | R |
| 10 | 19 | 6 | 01JAN16 | 1 | R |
| 11 | 20 | 8 | 01JAN16 | 1 | R |
| 12 | 21 | 5 | 01JAN16 | 1 | R |
| 13 | 22 | 4 | 01JAN16 | 1 | R |
| 14 | 23 | 9 | 01JAN16 | 1 | R |
| 15 | 24 | 11 | 01JAN16 | 1 | R |
| 16 | 25 | 8 | 01JAN16 | 1 | R |
| 17 | 26 | 7 | 01JAN16 | 1 | R |
| 18 | 27 | 6 | 01JAN16 | 1 | R |
| 19 | 28 | 5 | 01JAN16 | 1 | R |
| 20 | 29 | 7 | 01JAN16 | 1 | R |
| 21 | 30 | 6 | 01JAN16 | 1 | R |
| 22 | 31 | 9 | 01JAN16 | 1 | R |
| 23 | 32 | 10 | 01JAN16 | 1 | R |
| 24 | 33 | 9 | 01JAN16 | 1 | R |
| 25 | 34 | 11 | 01JAN16 | 1 | R |
| 26 | 35 | 10 | 01JAN16 | 1 | R |
| 27 | 36 | 8 | 01JAN16 | 1 | R |
| 28 | 37 | 9 | 01JAN16 | 1 | R |
| 29 | 38 | 7 | 01JAN16 | 1 | R |
| 30 | 39 | 6 | 01JAN16 | 1 | R |
| 1 | 10 | 1 | 31JAN16 | 1 | L |
| 2 | 11 | 3 | 31JAN16 | 1 | L |
| 3 | 12 | 2 | 31JAN16 | 1 | L |
| 4 | 13 | 4 | 31JAN16 | 1 | L |
| 5 | 14 | 5 | 31JAN16 | 1 | L |
| 6 | 15 | 2 | 31JAN16 | 1 | L |
| 7 | 16 | 3 | 31JAN16 | 1 | L |
| 8 | 17 | 6 | 31JAN16 | 1 | L |
| 9 | 18 | 7 | 31JAN16 | 1 | L |
| 10 | 19 | 3 | 31JAN16 | 1 | L |
| 11 | 20 | 5 | 31JAN16 | 1 | L |
| 12 | 21 | 2 | 31JAN16 | 1 | L |
| 13 | 22 | 1 | 31JAN16 | 1 | L |
| 14 | 23 | 6 | 31JAN16 | 1 | L |
| 15 | 24 | 8 | 31JAN16 | 1 | L |
| 16 | 25 | 5 | 31JAN16 | 1 | L |
| 17 | 26 | 4 | 31JAN16 | 1 | L |
| 18 | 27 | 3 | 31JAN16 | 1 | L |
| 19 | 28 | 2 | 31JAN16 | 1 | L |
| 20 | 29 | 4 | 31JAN16 | 1 | L |
| 21 | 30 | 3 | 31JAN16 | 1 | L |
| 22 | 31 | 6 | 31JAN16 | 1 | L |
| 23 | 32 | 7 | 31JAN16 | 1 | L |
| 24 | 33 | 6 | 31JAN16 | 1 | L |
| 25 | 34 | 8 | 31JAN16 | 1 | L |
| 26 | 35 | 7 | 31JAN16 | 1 | L |
| 27 | 36 | 5 | 31JAN16 | 1 | L |
| 28 | 37 | 6 | 31JAN16 | 1 | L |
| 29 | 38 | 4 | 31JAN16 | 1 | L |
| 30 | 39 | 3 | 31JAN16 | 1 | L |
| 1 | 10 | 4 | 31JAN16 | 1 | R |
| 2 | 11 | 6 | 31JAN16 | 1 | R |
| 3 | 12 | 5 | 31JAN16 | 1 | R |
| 4 | 13 | 7 | 31JAN16 | 1 | R |
| 5 | 14 | 8 | 31JAN16 | 1 | R |
| 6 | 15 | 5 | 31JAN16 | 1 | R |
| 7 | 16 | 6 | 31JAN16 | 1 | R |
| 8 | 17 | 9 | 31JAN16 | 1 | R |
| 9 | 18 | 10 | 31JAN16 | 1 | R |
| 10 | 19 | 6 | 31JAN16 | 1 | R |
| 11 | 20 | 8 | 31JAN16 | 1 | R |
| 12 | 21 | 5 | 31JAN16 | 1 | R |
| 13 | 22 | 4 | 31JAN16 | 1 | R |
| 14 | 23 | 9 | 31JAN16 | 1 | R |
| 15 | 24 | 11 | 31JAN16 | 1 | R |
| 16 | 25 | 8 | 31JAN16 | 1 | R |
| 17 | 26 | 7 | 31JAN16 | 1 | R |
| 18 | 27 | 6 | 31JAN16 | 1 | R |
| 19 | 28 | 5 | 31JAN16 | 1 | R |
| 20 | 29 | 7 | 31JAN16 | 1 | R |
| 21 | 30 | 6 | 31JAN16 | 1 | R |
| 22 | 31 | 9 | 31JAN16 | 1 | R |
| 23 | 32 | 10 | 31JAN16 | 1 | R |
| 24 | 33 | 9 | 31JAN16 | 1 | R |
| 25 | 34 | 11 | 31JAN16 | 1 | R |
| 26 | 35 | 10 | 31JAN16 | 1 | R |
| 27 | 36 | 8 | 31JAN16 | 1 | R |
| 28 | 37 | 9 | 31JAN16 | 1 | R |
| 29 | 38 | 7 | 31JAN16 | 1 | R |
| 30 | 39 | 6 | 31JAN16 | 1 | R |
Sample plot (drawn using excel) is attached for POS=L data.
So you want two plots.Better post it at ODS Graphic forum . data have; infile cards expandtabs truncover; input MeasNo X Y Date : date9. Ano POS $; format date date9.; cards; 1 10 2 01JAN16 1 L 2 11 4 01JAN16 1 L 3 12 3 01JAN16 1 L 4 13 5 01JAN16 1 L 5 14 6 01JAN16 1 L 6 15 3 01JAN16 1 L 7 16 4 01JAN16 1 L 8 17 7 01JAN16 1 L 9 18 8 01JAN16 1 L 10 19 4 01JAN16 1 L 11 20 6 01JAN16 1 L 12 21 3 01JAN16 1 L 13 22 2 01JAN16 1 L 14 23 7 01JAN16 1 L 15 24 9 01JAN16 1 L 16 25 6 01JAN16 1 L 17 26 5 01JAN16 1 L 18 27 4 01JAN16 1 L 19 28 3 01JAN16 1 L 20 29 5 01JAN16 1 L 21 30 4 01JAN16 1 L 22 31 7 01JAN16 1 L 23 32 8 01JAN16 1 L 24 33 7 01JAN16 1 L 25 34 9 01JAN16 1 L 26 35 8 01JAN16 1 L 27 36 6 01JAN16 1 L 28 37 7 01JAN16 1 L 29 38 5 01JAN16 1 L 30 39 4 01JAN16 1 L 1 10 4 01JAN16 1 R 2 11 6 01JAN16 1 R 3 12 5 01JAN16 1 R 4 13 7 01JAN16 1 R 5 14 8 01JAN16 1 R 6 15 5 01JAN16 1 R 7 16 6 01JAN16 1 R 8 17 9 01JAN16 1 R 9 18 10 01JAN16 1 R 10 19 6 01JAN16 1 R 11 20 8 01JAN16 1 R 12 21 5 01JAN16 1 R 13 22 4 01JAN16 1 R 14 23 9 01JAN16 1 R 15 24 11 01JAN16 1 R 16 25 8 01JAN16 1 R 17 26 7 01JAN16 1 R 18 27 6 01JAN16 1 R 19 28 5 01JAN16 1 R 20 29 7 01JAN16 1 R 21 30 6 01JAN16 1 R 22 31 9 01JAN16 1 R 23 32 10 01JAN16 1 R 24 33 9 01JAN16 1 R 25 34 11 01JAN16 1 R 26 35 10 01JAN16 1 R 27 36 8 01JAN16 1 R 28 37 9 01JAN16 1 R 29 38 7 01JAN16 1 R 30 39 6 01JAN16 1 R 1 10 1 31JAN16 1 L 2 11 3 31JAN16 1 L 3 12 2 31JAN16 1 L 4 13 4 31JAN16 1 L 5 14 5 31JAN16 1 L 6 15 2 31JAN16 1 L 7 16 3 31JAN16 1 L 8 17 6 31JAN16 1 L 9 18 7 31JAN16 1 L 10 19 3 31JAN16 1 L 11 20 5 31JAN16 1 L 12 21 2 31JAN16 1 L 13 22 1 31JAN16 1 L 14 23 6 31JAN16 1 L 15 24 8 31JAN16 1 L 16 25 5 31JAN16 1 L 17 26 4 31JAN16 1 L 18 27 3 31JAN16 1 L 19 28 2 31JAN16 1 L 20 29 4 31JAN16 1 L 21 30 3 31JAN16 1 L 22 31 6 31JAN16 1 L 23 32 7 31JAN16 1 L 24 33 6 31JAN16 1 L 25 34 8 31JAN16 1 L 26 35 7 31JAN16 1 L 27 36 5 31JAN16 1 L 28 37 6 31JAN16 1 L 29 38 4 31JAN16 1 L 30 39 3 31JAN16 1 L 1 10 4 31JAN16 1 R 2 11 6 31JAN16 1 R 3 12 5 31JAN16 1 R 4 13 7 31JAN16 1 R 5 14 8 31JAN16 1 R 6 15 5 31JAN16 1 R 7 16 6 31JAN16 1 R 8 17 9 31JAN16 1 R 9 18 10 31JAN16 1 R 10 19 6 31JAN16 1 R 11 20 8 31JAN16 1 R 12 21 5 31JAN16 1 R 13 22 4 31JAN16 1 R 14 23 9 31JAN16 1 R 15 24 11 31JAN16 1 R 16 25 8 31JAN16 1 R 17 26 7 31JAN16 1 R 18 27 6 31JAN16 1 R 19 28 5 31JAN16 1 R 20 29 7 31JAN16 1 R 21 30 6 31JAN16 1 R 22 31 9 31JAN16 1 R 23 32 10 31JAN16 1 R 24 33 9 31JAN16 1 R 25 34 11 31JAN16 1 R 26 35 10 31JAN16 1 R 27 36 8 31JAN16 1 R 28 37 9 31JAN16 1 R 29 38 7 31JAN16 1 R 30 39 6 31JAN16 1 R ; run; proc sgpanel data=have; panelby pos; series x=x y=y/group=date break; run;
change data structure.
data have;
infile cards expandtabs truncover;
input MeasNo X Y Date : date9. Ano POS $;
cards;
1 10 2 01JAN16 1 L
2 11 4 01JAN16 1 L
3 12 3 01JAN16 1 L
4 13 5 01JAN16 1 L
5 14 6 01JAN16 1 L
6 15 3 01JAN16 1 L
7 16 4 01JAN16 1 L
8 17 7 01JAN16 1 L
9 18 8 01JAN16 1 L
10 19 4 01JAN16 1 L
11 20 6 01JAN16 1 L
12 21 3 01JAN16 1 L
13 22 2 01JAN16 1 L
14 23 7 01JAN16 1 L
15 24 9 01JAN16 1 L
16 25 6 01JAN16 1 L
17 26 5 01JAN16 1 L
18 27 4 01JAN16 1 L
19 28 3 01JAN16 1 L
20 29 5 01JAN16 1 L
21 30 4 01JAN16 1 L
22 31 7 01JAN16 1 L
23 32 8 01JAN16 1 L
24 33 7 01JAN16 1 L
25 34 9 01JAN16 1 L
26 35 8 01JAN16 1 L
27 36 6 01JAN16 1 L
28 37 7 01JAN16 1 L
29 38 5 01JAN16 1 L
30 39 4 01JAN16 1 L
1 10 4 01JAN16 1 R
2 11 6 01JAN16 1 R
3 12 5 01JAN16 1 R
4 13 7 01JAN16 1 R
5 14 8 01JAN16 1 R
6 15 5 01JAN16 1 R
7 16 6 01JAN16 1 R
8 17 9 01JAN16 1 R
9 18 10 01JAN16 1 R
10 19 6 01JAN16 1 R
11 20 8 01JAN16 1 R
12 21 5 01JAN16 1 R
13 22 4 01JAN16 1 R
14 23 9 01JAN16 1 R
15 24 11 01JAN16 1 R
16 25 8 01JAN16 1 R
17 26 7 01JAN16 1 R
18 27 6 01JAN16 1 R
19 28 5 01JAN16 1 R
20 29 7 01JAN16 1 R
21 30 6 01JAN16 1 R
22 31 9 01JAN16 1 R
23 32 10 01JAN16 1 R
24 33 9 01JAN16 1 R
25 34 11 01JAN16 1 R
26 35 10 01JAN16 1 R
27 36 8 01JAN16 1 R
28 37 9 01JAN16 1 R
29 38 7 01JAN16 1 R
30 39 6 01JAN16 1 R
1 10 1 31JAN16 1 L
2 11 3 31JAN16 1 L
3 12 2 31JAN16 1 L
4 13 4 31JAN16 1 L
5 14 5 31JAN16 1 L
6 15 2 31JAN16 1 L
7 16 3 31JAN16 1 L
8 17 6 31JAN16 1 L
9 18 7 31JAN16 1 L
10 19 3 31JAN16 1 L
11 20 5 31JAN16 1 L
12 21 2 31JAN16 1 L
13 22 1 31JAN16 1 L
14 23 6 31JAN16 1 L
15 24 8 31JAN16 1 L
16 25 5 31JAN16 1 L
17 26 4 31JAN16 1 L
18 27 3 31JAN16 1 L
19 28 2 31JAN16 1 L
20 29 4 31JAN16 1 L
21 30 3 31JAN16 1 L
22 31 6 31JAN16 1 L
23 32 7 31JAN16 1 L
24 33 6 31JAN16 1 L
25 34 8 31JAN16 1 L
26 35 7 31JAN16 1 L
27 36 5 31JAN16 1 L
28 37 6 31JAN16 1 L
29 38 4 31JAN16 1 L
30 39 3 31JAN16 1 L
1 10 4 31JAN16 1 R
2 11 6 31JAN16 1 R
3 12 5 31JAN16 1 R
4 13 7 31JAN16 1 R
5 14 8 31JAN16 1 R
6 15 5 31JAN16 1 R
7 16 6 31JAN16 1 R
8 17 9 31JAN16 1 R
9 18 10 31JAN16 1 R
10 19 6 31JAN16 1 R
11 20 8 31JAN16 1 R
12 21 5 31JAN16 1 R
13 22 4 31JAN16 1 R
14 23 9 31JAN16 1 R
15 24 11 31JAN16 1 R
16 25 8 31JAN16 1 R
17 26 7 31JAN16 1 R
18 27 6 31JAN16 1 R
19 28 5 31JAN16 1 R
20 29 7 31JAN16 1 R
21 30 6 31JAN16 1 R
22 31 9 31JAN16 1 R
23 32 10 31JAN16 1 R
24 33 9 31JAN16 1 R
25 34 11 31JAN16 1 R
26 35 10 31JAN16 1 R
27 36 8 31JAN16 1 R
28 37 9 31JAN16 1 R
29 38 7 31JAN16 1 R
30 39 6 31JAN16 1 R
;
run;
data want;
merge have(where=(date='01JAN16'd) rename=(x=x1 y=y1))
have(where=(date='31JAN16'd) rename=(x=x2 y=y2));
proc sgplot data=want nocycleattrs;
series x=x1 y=y1/group=pos;
series x=x2 y=y2/group=pos;
run;
wonderful.. easy and working.
I am new to SAS but have started loving it a lot.
Thanks to everyone and community.
Although, it is veyr nice try, I noticed that the output did not meet the below requirements:
1. There should have been two plots - one for POS=L and another for POS=R
2. Also each chart should have only two lines (one for Jan 01st and another for Jan 31st)
😞
Another issue here. I got the following warning message in the results, what could be the reason:
NOTE: Marker and line antialiasing has been disabled because the threshold has been reached. You can set ANTIALIASMAX=2300 in the ODS GRAPHICS statement to restore antialiasing.
WARNING: X=X1 is invalid. The option expects at least one non-missing value in the column.
NOTE: There were 2285 observations read from the data set WORK.OVERLAY_PLOTS.
So you want two plots.Better post it at ODS Graphic forum . data have; infile cards expandtabs truncover; input MeasNo X Y Date : date9. Ano POS $; format date date9.; cards; 1 10 2 01JAN16 1 L 2 11 4 01JAN16 1 L 3 12 3 01JAN16 1 L 4 13 5 01JAN16 1 L 5 14 6 01JAN16 1 L 6 15 3 01JAN16 1 L 7 16 4 01JAN16 1 L 8 17 7 01JAN16 1 L 9 18 8 01JAN16 1 L 10 19 4 01JAN16 1 L 11 20 6 01JAN16 1 L 12 21 3 01JAN16 1 L 13 22 2 01JAN16 1 L 14 23 7 01JAN16 1 L 15 24 9 01JAN16 1 L 16 25 6 01JAN16 1 L 17 26 5 01JAN16 1 L 18 27 4 01JAN16 1 L 19 28 3 01JAN16 1 L 20 29 5 01JAN16 1 L 21 30 4 01JAN16 1 L 22 31 7 01JAN16 1 L 23 32 8 01JAN16 1 L 24 33 7 01JAN16 1 L 25 34 9 01JAN16 1 L 26 35 8 01JAN16 1 L 27 36 6 01JAN16 1 L 28 37 7 01JAN16 1 L 29 38 5 01JAN16 1 L 30 39 4 01JAN16 1 L 1 10 4 01JAN16 1 R 2 11 6 01JAN16 1 R 3 12 5 01JAN16 1 R 4 13 7 01JAN16 1 R 5 14 8 01JAN16 1 R 6 15 5 01JAN16 1 R 7 16 6 01JAN16 1 R 8 17 9 01JAN16 1 R 9 18 10 01JAN16 1 R 10 19 6 01JAN16 1 R 11 20 8 01JAN16 1 R 12 21 5 01JAN16 1 R 13 22 4 01JAN16 1 R 14 23 9 01JAN16 1 R 15 24 11 01JAN16 1 R 16 25 8 01JAN16 1 R 17 26 7 01JAN16 1 R 18 27 6 01JAN16 1 R 19 28 5 01JAN16 1 R 20 29 7 01JAN16 1 R 21 30 6 01JAN16 1 R 22 31 9 01JAN16 1 R 23 32 10 01JAN16 1 R 24 33 9 01JAN16 1 R 25 34 11 01JAN16 1 R 26 35 10 01JAN16 1 R 27 36 8 01JAN16 1 R 28 37 9 01JAN16 1 R 29 38 7 01JAN16 1 R 30 39 6 01JAN16 1 R 1 10 1 31JAN16 1 L 2 11 3 31JAN16 1 L 3 12 2 31JAN16 1 L 4 13 4 31JAN16 1 L 5 14 5 31JAN16 1 L 6 15 2 31JAN16 1 L 7 16 3 31JAN16 1 L 8 17 6 31JAN16 1 L 9 18 7 31JAN16 1 L 10 19 3 31JAN16 1 L 11 20 5 31JAN16 1 L 12 21 2 31JAN16 1 L 13 22 1 31JAN16 1 L 14 23 6 31JAN16 1 L 15 24 8 31JAN16 1 L 16 25 5 31JAN16 1 L 17 26 4 31JAN16 1 L 18 27 3 31JAN16 1 L 19 28 2 31JAN16 1 L 20 29 4 31JAN16 1 L 21 30 3 31JAN16 1 L 22 31 6 31JAN16 1 L 23 32 7 31JAN16 1 L 24 33 6 31JAN16 1 L 25 34 8 31JAN16 1 L 26 35 7 31JAN16 1 L 27 36 5 31JAN16 1 L 28 37 6 31JAN16 1 L 29 38 4 31JAN16 1 L 30 39 3 31JAN16 1 L 1 10 4 31JAN16 1 R 2 11 6 31JAN16 1 R 3 12 5 31JAN16 1 R 4 13 7 31JAN16 1 R 5 14 8 31JAN16 1 R 6 15 5 31JAN16 1 R 7 16 6 31JAN16 1 R 8 17 9 31JAN16 1 R 9 18 10 31JAN16 1 R 10 19 6 31JAN16 1 R 11 20 8 31JAN16 1 R 12 21 5 31JAN16 1 R 13 22 4 31JAN16 1 R 14 23 9 31JAN16 1 R 15 24 11 31JAN16 1 R 16 25 8 31JAN16 1 R 17 26 7 31JAN16 1 R 18 27 6 31JAN16 1 R 19 28 5 31JAN16 1 R 20 29 7 31JAN16 1 R 21 30 6 31JAN16 1 R 22 31 9 31JAN16 1 R 23 32 10 31JAN16 1 R 24 33 9 31JAN16 1 R 25 34 11 31JAN16 1 R 26 35 10 31JAN16 1 R 27 36 8 31JAN16 1 R 28 37 9 31JAN16 1 R 29 38 7 31JAN16 1 R 30 39 6 31JAN16 1 R ; run; proc sgpanel data=have; panelby pos; series x=x y=y/group=date break; run;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.