臨床統計に限らず時系列データをわかりやすくグラフに表示するために、折れ線グラフはよく使われます。
GTLで折れ線グラフを作図にはSeriesplotステートメントを使用します。
Seriesplotステートメント
Seiresplotステートメントは各データを線で結んだグラフを作成します。線は直線だけでなく矢印やスプライン曲線で結ぶことも可能です。
試しに原油ETFの終値をプロットしてみます。
proc template;
define statgraph seriesplot;
begingraph;
entrytitle "1671 WTI原油価格連動型上場投信";
layout overlay / xaxisopts=(griddisplay=on)
yaxisopts=(griddisplay=on) ;
seriesplot x=DATE y=END_PRICE;
endlayout;
endgraph;
end;
run;
proc sgrender data=ds1 template=seriesplot;
run;

実行結果
単純な折れ線グラフを作成するだけであればxとyに対応する変数を指定するだけです。簡単ですね。
複数の系列を表示する
SeriesplotステートメントのGroupオプションにクラス変数を指定すると、クラス変数ごとに系列を作成します。
今度は金ETFと原油ETFの終値の値動きを表示してみましょう。変数TICKERにはETFの名称を格納し、この変数をgroupオプションへ指定します。
proc template;
define statgraph seriesplot;
begingraph;
entrytitle "1671 WTI原油価格連動型上場投信";
layout overlay / xaxisopts=(griddisplay=on)
yaxisopts=(griddisplay=on) ;
seriesplot x=DATE y=END_PRICE /
group=TICKER;
endlayout;
endgraph;
end;
run;
proc sgrender data=ds1 template=seriesplot;
run;

実行結果
金ETFに対して原油ETFの値下がりっぷりがやばいです。価格が4分の1になるとは・・・
エラーバーを表示する
時系列データにエラーバーを表示させるには以下のerrorbarオプションを指定します。
オプション名 | 説明 |
---|---|
xerrorbarlower | x方向エラーバーの下限の数値を格納した変数を指定する |
xerrorbarupper | x方向エラーバーの上限の数値を格納した変数を指定する |
yerrorbarlower | y方向エラーバーの下限の数値を格納した変数を指定する |
yerrorbarlower | y方向エラーバーの上限の数値を格納した変数を指定する |
errorbarattrs | エラーバーの体裁を指定する |
Seriesplotステートメントはデフォルトだとマーカーは表示されません。displayオプションでAllを指定すると折れ線とマーカーを表示できます。
以下の例は応答変数(RES)の平均値の時間推移をエラーバーと共に表示しています。LCLMおよびUCLMはそれぞれ95%信頼限界を格納した変数です。
proc template;
define statgraph seriesplot;
begingraph;
entrytitle "1671 WTI原油価格連動型上場投信";
layout overlay / xaxisopts=(griddisplay=on)
yaxisopts=(griddisplay=on) ;
seriesplot x=TIME y=RES /
display=all
yerrorlower=LCLM
yerrorupper=UCLM
markerattrs=(symbol=circlefilled size=10)
errorbarattrs=(color=black);
endlayout;
endgraph;
end;
run;
proc sgrender data=ds1 template=seriesplot;
run;

実行結果