Видимо, процедура BOXPLOT хочет, чтобы входные данные были упорядочены по группирующей переменной. Попробуйте этот пример, используя набор данных, который должен иметь каждая установка SAS.
proc sort data=sashelp.class out=class;
by sex;
run;
proc boxplot data=class;
plot height * sex ;
run;
Или для вашего набора данных:
proc sort data = mylib.q01_01 out=q01_01;
by town_type;
run;
proc boxplot data=q01_01;
plot smoking_rate * town_type ;
run;