1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
* Отобразить две категории на одной и той же гистограмме.
* Определим некоторые данные, чтобы проиллюстрировать работу синтаксиса.
* Автор: rlevesque@videotron.ca.

NEW file.
SET SEED=975316421.
INPUT PROGRAM.
LOOP id=1 TO 50.
	COMPUTE income=RV.NORMAL(35,5).
	COMPUTE group=UNIFORM(1)>.5.
	END CASE.
END LOOP.
END FILE.
END INPUT PROGRAM.
EXECUTE.

* Идея синтаксиса – преобразовать данные так, чтобы потом их можно было отобразить в виде столбцовой диаграммы, допускающей вывод одновременно двух категорий разным цветом, которая при этом будет напоминать гистограмму.
* Мы просто перекодируем переменную доход (income) определённым способом.
* Сначала построим гистограмму и настроим на ней вручную нужное нам число столбцов.
GRAPH  /HISTOGRAM=income .
* Отрегулируем её так, чтобы ширина столбца была равна 2. Середина первого столбца придётся на 26.
* (Разумеется, это можно автоматизировать при необходимости).

* Перекодируем income следующим образом.
LOOP cnt=26 TO 50 BY 2.
IF RANGE(income,cnt-1,cnt+0.99999) income1=cnt.
END LOOP.
EXECUTE.

GRAPH
  /BAR(GROUPED)=COUNT BY income1 BY group
  /MISSING=REPORT.