Solved
Contributor
Posts: 24

# Time series using Proc sgplot

[ Edited ]

Hello,

I am trying to create timeseries graph using proc sgplot but in my case there are multiple records available for single date.this causes following graph to be formed.Here i have two rows for 21 jan .

instead i would like to make graph like this:

Is there any way to get 2nd graph?

I am using this code:

proc sgplot data=work.limits;
series x=time_stamp y=test_value/markers ;
refline &bin_lsl/axis=Y label= 'LSL&bin_lsl.' lineattrs=(color ='green' thickness=2 pattern =dashdashdot);
refline &bin_usl/axis=Y label= 'USL&bin_usl.' lineattrs=(color ='green' thickness=2 pattern =dashdashdot);
xaxis discreteorder=data fitpolicy=rotate display=all;
yaxis grid max=&bin_usl min = &bin_lsl ;

Accepted Solutions
Solution
‎08-04-2016 01:16 AM
SAS Super FREQ
Posts: 3,904

## Re: Time series using Proc sgplot

You need to sort the data by the X variable.  There is not a unique way to plot data that has duplicate X values, but in your example you are plotting the high value before the low values, so run the following before you call PROC SGPLOT:

``````proc sort data=work.limits;
by time_stamp test_value;
run;``````

All Replies
Super User
Posts: 8,634

## Re: Time series using Proc sgplot

Remove duplicate records before doing the graph?

Solution
‎08-04-2016 01:16 AM
SAS Super FREQ
Posts: 3,904

## Re: Time series using Proc sgplot

You need to sort the data by the X variable.  There is not a unique way to plot data that has duplicate X values, but in your example you are plotting the high value before the low values, so run the following before you call PROC SGPLOT:

``````proc sort data=work.limits;
by time_stamp test_value;
run;``````
☑ This topic is solved.