BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
OKY1
Calcite | Level 5

proc glm プロシジャを使用すると,デフォルトで箱ひげ図が表示されます。

その表示された箱ひげ図に外れ値がある場合,既定の範囲を超えるとその外れ値に対して,

入っているデータのobs番号が横につくのですが,このobs番号を表示させない方法を

知っている人がいれば,教えていただけますでしょうか。

1 ACCEPTED SOLUTION

Accepted Solutions
yu_sas
SAS Employee

オプションはないので、ODSグラフ機能のテンプレートを直接編集する必要があると思います。

今回の場合BOXPLOTステートメントのDATALABEL=オプションを外せばよさそうです。

 

boxplot y=_Y_OBS x=_XVAR_OBS / labelfar=true datalabel=_Y_OBS primary=true;

 

proc template;
  define statgraph Stat.GLM.Graphics.FitBoxPlot;
   notes "効果プロット (x=CLASS) ";
   dynamic _TITLE _XLABEL _SHORTXLABEL _YLABEL _SHORTYLABEL _RESPONSENAME _RESPONSELABEL _DATALABEL _DISPLAYMISSING _XVAR_OBS
      _Y_OBS _FREQ _WEIGHT _OVERALLF _OVERALLP _SHOWINSET _byline_ _bytitle_ _byfootnote_;
   BeginGraph / includemissingdiscrete=_DISPLAYMISSING;
      entrytitle "Testing - 分布 : " _RESPONSENAME;
      layout overlay / yaxisopts=(griddisplay=auto_on label=_YLABEL shortlabel=_SHORTYLABEL) xaxisopts=(label=_XLABEL
         shortlabel=_SHORTXLABEL discreteopts=(tickvaluefitpolicy=rotatethin));
         boxplot y=_Y_OBS x=_XVAR_OBS / labelfar=true primary=true;
         if ((_SHOWINSET EQ 1) AND EXISTS(_OVERALLF))
            layout gridded / columns=2 halign=left border=true BackgroundColor=GraphWalls:Color Opaque=true autoalign=(
               TopRight TopLeft BottomRight BottomLeft);
               entry halign=left "F" / valign=top;
               entry halign=right eval (PUT(_OVERALLF,7.2)) / valign=top;
               entry halign=left "確率 > F" / valign=top;
               entry halign=right eval (PUT(_OVERALLP,PVALUE6.4)) / valign=top;
            endlayout;
         endif;
      endlayout;
      if (_BYTITLE_)
         entrytitle _BYLINE_ / textattrs=GRAPHVALUETEXT;
      else
         if (_BYFOOTNOTE_)
            entryfootnote halign=left _BYLINE_;
         endif;
      endif;
   EndGraph;
end;
run;

編集したテンプレートを削除するときは以下になります。

 

proc template;
  delete Stat.GLM.Graphics.FitBoxPlot;
run;

 

View solution in original post

2 REPLIES 2
yu_sas
SAS Employee

オプションはないので、ODSグラフ機能のテンプレートを直接編集する必要があると思います。

今回の場合BOXPLOTステートメントのDATALABEL=オプションを外せばよさそうです。

 

boxplot y=_Y_OBS x=_XVAR_OBS / labelfar=true datalabel=_Y_OBS primary=true;

 

proc template;
  define statgraph Stat.GLM.Graphics.FitBoxPlot;
   notes "効果プロット (x=CLASS) ";
   dynamic _TITLE _XLABEL _SHORTXLABEL _YLABEL _SHORTYLABEL _RESPONSENAME _RESPONSELABEL _DATALABEL _DISPLAYMISSING _XVAR_OBS
      _Y_OBS _FREQ _WEIGHT _OVERALLF _OVERALLP _SHOWINSET _byline_ _bytitle_ _byfootnote_;
   BeginGraph / includemissingdiscrete=_DISPLAYMISSING;
      entrytitle "Testing - 分布 : " _RESPONSENAME;
      layout overlay / yaxisopts=(griddisplay=auto_on label=_YLABEL shortlabel=_SHORTYLABEL) xaxisopts=(label=_XLABEL
         shortlabel=_SHORTXLABEL discreteopts=(tickvaluefitpolicy=rotatethin));
         boxplot y=_Y_OBS x=_XVAR_OBS / labelfar=true primary=true;
         if ((_SHOWINSET EQ 1) AND EXISTS(_OVERALLF))
            layout gridded / columns=2 halign=left border=true BackgroundColor=GraphWalls:Color Opaque=true autoalign=(
               TopRight TopLeft BottomRight BottomLeft);
               entry halign=left "F" / valign=top;
               entry halign=right eval (PUT(_OVERALLF,7.2)) / valign=top;
               entry halign=left "確率 > F" / valign=top;
               entry halign=right eval (PUT(_OVERALLP,PVALUE6.4)) / valign=top;
            endlayout;
         endif;
      endlayout;
      if (_BYTITLE_)
         entrytitle _BYLINE_ / textattrs=GRAPHVALUETEXT;
      else
         if (_BYFOOTNOTE_)
            entryfootnote halign=left _BYLINE_;
         endif;
      endif;
   EndGraph;
end;
run;

編集したテンプレートを削除するときは以下になります。

 

proc template;
  delete Stat.GLM.Graphics.FitBoxPlot;
run;

 

OKY1
Calcite | Level 5

オプションとして,表示させないという機能はないんですね。

もし削除したかったら,テンプレート機能を使うしかないことですね。

プログラムを教えていただきありがとうございます。

将来的にオプション機能で追加されることを願っておきます。

 

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

Discussion stats
  • 2 replies
  • 1091 views
  • 2 likes
  • 2 in conversation