折れ線グラフで、データがない部分は線をつながない

[OS] ALL
[リリース] ALL
[キーワード] GRAPH, GPLOT, line plot, missing, SKIPMISS

[質問]

折れ線グラフで、データがない部分の線をつながないようにできますか。
たとえば下のようなデータでは、12が欠損値のため、11と13の点がつながれてしまいますが、切れ目を入れることはできますか。


  DATA sample; 
    INPUT time value; 
  CARDS;
   8  30
   9  45
  10  70
  11  68
  12   .
  13  65
  14  70
  15  82
  16  91
  17 111
  18  95
  ; 
  RUN;

  SYMBOL1 I=join V=dot C=blue;
  PROC GPLOT DATA=sample;
    PLOT value*time;
  RUN;
  QUIT;

[回答]

PLOTステートメントでSKIPMISSオプションを指定すると、欠損値の部分は線をつながないようにできます。


  SYMBOL1 I=join V=dot C=blue;
  PROC GPLOT DATA=sample;
    PLOT value*time / SKIPMISS;      /* SKIPMISSオプション */ 
  RUN;
  QUIT;

上記のプログラム例を実行した結果を次に示します。

skipmiss

SKIPMISSオプション
Y変数の値に欠損値が存在するところで、プロット線または塗りつぶしエリアに切れ目を入れます。
デフォルトでは、欠損値があってもプロット線や塗りつぶしエリアに切れ目は入りません。

SKIPMISSが使用されている場合、オブザベーションを独立(水平軸)変数でソートする必要があります。
プロットリクエストが「y-variable*x-variable=third-variable」である場合も、3番目の変数の値でオブザベーションをソートする必要があります。