SAS X Axis Log Scale - PullRequest
       50

SAS X Axis Log Scale

0 голосов
/ 13 октября 2019

Я использую sgplot для создания гистограммы.

Кто-нибудь знает, как отобразить ось x в логарифмическом масштабе?

Я пытался следовать приведенной ниже документации, но это не похожеработать. Я получаю следующее предупреждение:

NOTE: Log axis cannot support zero or negative values in the data range.
      The axis type will be changed to LINEAR.

https://documentation.sas.com/?docsetId=grstatproc&docsetTarget=p07m2vpyq75fgan14m6g5pphnwlr.htm&docsetVersion=9.4&locale=en#n10tv33ymilnhln1ld2l0ny0x11u

data Have;
call streaminit(12345);
do i = 1 to 10000;
   t = abs(rand("normal", 0, 5));
   x = exp(t);
   y = rand("Normal");
   if abs(x)>1 then output;
end;
run;

proc sgplot data=have;
histogram x;
xaxis type=log logbase=10 logstyle=logexpand 
   logvtype=exponent
   min=1 max=8;
run;

1 Ответ

0 голосов
/ 14 октября 2019

Вместо этого рассмотрим создание гистограммы лог-преобразования:

data plot;
  set have;
  log10x = log10(x);
run;

proc sgplot data=plot;
histogram log10x;

* xaxis type=log logbase=10 logstyle=logexpand 
   logvtype=exponent
   min=1 max=8
  ;
run;

enter image description here

...