使用PROC GPLOT创建图表,强制排序时间

时间:2014-10-08 14:11:21

标签: sas

我正在尝试在SAS Enterprise指南中创建图表。我正在绘制的数据如下:

col1  col2    col3
1     12:00    20
2     13:00    30
3     14:00    15
.       .      .
.       .      .
25    24:00    90
26    01:00    25
27    02:00    45
.       .      .
.       .      .
36    11:00    35

横轴需要col2,纵轴需要col3。 col1是col2的参考(时间值)。 问题是排序col2。如果有办法我可以强制排序col2,我认为它会工作。 这就是我所拥有的

SYMBOL1
    INTERPOL=JOIN
    HEIGHT=10pt
    VALUE=NONE
    LINE=1
    WIDTH=2
    CV = _STYLE_
;
SYMBOL2
    INTERPOL=JOIN
    HEIGHT=10pt
    VALUE=NONE
    LINE=1
    WIDTH=2

    CV = _STYLE_
;
Legend1
    FRAME;
Axis1
    STYLE=1
    WIDTH=1
    MINOR=NONE
    ORDER=0 TO 200 BY 10;
Axis2
    STYLE=1
    WIDTH=1
    ORDER=0 TO 36 BY 1
    MINOR= 
    (NUMBER=1
    );
TITLE;
TITLE1 "test_graph";
FOOTNOTE;
PROC GPLOT DATA = input_data;
PLOT col2 * col3   /
    VAXIS=AXIS1
    HAXIS=AXIS2
FRAME   LHREF=34
CHREF=BLACK
HREF=0 TO 36 BY 1
LEGEND=LEGEND1;
RUN; QUIT;

除了我尝试添加以下语句以强制排序,但它不起作用。

order=(12:00,13:00,14:00,......23:00,0:00,1:00,2:00,....11:00)

请建议。

感谢

1 个答案:

答案 0 :(得分:0)

使用下面的代码,它工作正常。

proc sgplot data=input_data ;
    xaxis values=("12:00" "13:00" "14:00"......"23:00" "0:00" "1:00" "2:00"...."11:00")
    label="time";
      yaxis integer values=(0 TO 200 BY 10) label="numb";
      series x=col2  y=col3 ;
    run;