#sas #format #ods #sas-studio #sgplot
#sas #форматирование #ods #sas-studio #sgplot
Вопрос:
Я пытаюсь отобразить различные уровни заработной платы на графике иглы, и мне нужна ссылочная линия. Следующий код предоставляет эту эталонную линию, но линия того же цвета, что и иглы, и слишком тонкая. Есть ли способ изменить это?
SYMBOL1
INTERPOL=NEEDLE
HEIGHT=10pt
VALUE=NONE
LINE=1
WIDTH=2
CV = _STYLE_
;
Axis1
STYLE=1
WIDTH=1
MINOR=NONE
REFLABEL=(j=c color = red width = 5 '');
;
Axis2
STYLE=1
WIDTH=1
MINOR=NONE
;
TITLE;
TITLE1 "Bootstrap: Needle Plot of log salary";
PROC GPLOT
DATA = sashelp.baseball
;
PLOT logsalary * name /
VAXIS = AXIS1
HAXIS = AXIS2
VREF = 4
;
RUN; QUIT;
Ответ №1:
Цвет и ширина ссылочных строк регулируются списками перечислений в VREF
, CVREF
и WVREF
опциях PLOT
инструкции. Метки и цвета ссылочных строк должны быть вручную выровнены с аналогичными списками перечислений в AXIS
инструкции.
Дополнительный контроль над процессом построения можно осуществлять с помощью наборов данных аннотаций. В частности, можно указать аннотации, которые будут отображаться после завершения отрисовки процедуры, при этом результат визуализации будет отображаться поверх выходных данных процедуры.
Пример
SYMBOL1 INTERPOL=NEEDLE HEIGHT=10pt VALUE=NONE LINE=1WIDTH=2 CV = _STYLE_ ;
Axis1 order = 0 to 10 STYLE=1 WIDTH=1 MINOR=NONE
REFLABEL =
( j=c color=RED height=4 "HELLO" /* labels for two reference lines */
j=l color=BLUE height=3 "EIGHT"
);
Axis2 STYLE=1 WIDTH=1 MINOR=NONE ;
TITLE;
TITLE1 "Bootstrap: Needle Plot of log salary";
options mprint;
DATA anno;
%annomac;
when = 'After';
%system (1,2,4)
%line (0,1, 100,1, GREEN, 0, 6)
%label (30, 1.2, "LABEL AFTER", GREEN, 0, 0, 4, , B)
/* %LABEL (x, y, text-string, color, angle, rotate, size, style, position); */
RUN;
PROC GPLOT
DATA = sashelp.baseball(obs=20)
ANNO = anno
;
PLOT logsalary * name /
VAXIS = AXIS1
HAXIS = AXIS2
VREF = ( 4 8 ) /* axial data value of reference lines */
WVREF = ( 4 6 ) /* Width and colors of reference lines */
CVREF = ( RED BLUE )
;
run;quit;
Комментарии:
1. есть ли способ сделать так, чтобы ссылочная линия отображалась поверх плотного графика?
2. Обновленный ответ, чтобы продемонстрировать использование данных аннотации.