SAS - Grafici a torta

Un grafico a torta è una rappresentazione dei valori come fette di un cerchio con colori diversi. Le sezioni vengono etichettate e nel grafico sono rappresentati anche i numeri corrispondenti a ciascuna sezione.

In SAS il grafico a torta viene creato utilizzando PROC TEMPLATE che prende i parametri per controllare percentuale, etichette, colore, titolo ecc.

Sintassi

La sintassi di base per creare un grafico a torta in SAS è:

PROC TEMPLATE;
   DEFINE STATGRAPH pie;
      BEGINGRAPH;
         LAYOUT REGION;
            PIECHART CATEGORY = variable /
            DATALABELLOCATION = OUTSIDE
            CATEGORYDIRECTION = CLOCKWISE
            START = 180 NAME = 'pie';
            DISCRETELEGEND 'pie' /
            TITLE = ' ';
         ENDLAYOUT;
      ENDGRAPH;
   END;
RUN;

Di seguito è riportata la descrizione dei parametri utilizzati:

  • variable è il valore per il quale creiamo il grafico a torta.

Grafico a torta semplice

In questo grafico a torta prendiamo una singola variabile dal set di dati. Il grafico a torta viene creato con il valore delle fette che rappresenta la frazione del conteggio della variabile rispetto al valore totale della variabile.

Esempio

Nell'esempio seguente ogni sezione rappresenta la frazione del tipo di auto dal numero totale di auto.

PROC SQL;
create table CARS1 as
SELECT make, model, type, invoice, horsepower, length, weight
 FROM 
SASHELP.CARS
WHERE make in ('Audi','BMW')
;
RUN;

PROC TEMPLATE;
   DEFINE STATGRAPH pie;
      BEGINGRAPH;
         LAYOUT REGION;
            PIECHART CATEGORY = type /
            DATALABELLOCATION = OUTSIDE
            CATEGORYDIRECTION = CLOCKWISE
            START = 180 NAME = 'pie';
            DISCRETELEGEND 'pie' /
            TITLE = 'Car Types';
         ENDLAYOUT;
      ENDGRAPH;
   END;
RUN;
PROC SGRENDER DATA = cars1
            TEMPLATE = pie;
RUN;

Quando eseguiamo il codice sopra, otteniamo il seguente output:

Grafico a torta con etichette dati

In questo grafico a torta rappresentiamo sia il valore frazionario che il valore percentuale per ogni fetta. Modifichiamo anche la posizione dell'etichetta in modo che si trovi all'interno del grafico. Lo stile di aspetto del grafico viene modificato utilizzando l'opzione DATASKIN. Utilizza uno degli stili incorporati, disponibili nell'ambiente SAS.

Esempio

PROC TEMPLATE;
   DEFINE STATGRAPH pie;
      BEGINGRAPH;
         LAYOUT REGION;
            PIECHART CATEGORY = type /
            DATALABELLOCATION = INSIDE
            DATALABELCONTENT = ALL
            CATEGORYDIRECTION = CLOCKWISE
            DATASKIN = SHEEN 
            START = 180 NAME = 'pie';
            DISCRETELEGEND 'pie' /
            TITLE = 'Car Types';
         ENDLAYOUT;
      ENDGRAPH;
   END;
RUN;
PROC SGRENDER DATA = cars1
            TEMPLATE = pie;
RUN;

Quando eseguiamo il codice sopra, otteniamo il seguente output:

Grafico a torta raggruppato

In questo grafico a torta il valore della variabile presentata nel grafico è raggruppato rispetto a un'altra variabile dello stesso set di dati. Ogni gruppo diventa un cerchio e il grafico ha tanti cerchi concentrici quanti sono i gruppi disponibili.

Esempio

Nell'esempio seguente raggruppiamo il grafico rispetto alla variabile denominata "Make". Poiché sono disponibili due valori ("Audi" e "BMW"), otteniamo due cerchi concentrici che rappresentano ciascuno segmenti di tipi di auto della propria marca.

PROC TEMPLATE;
   DEFINE STATGRAPH pie;
      BEGINGRAPH;
         LAYOUT REGION;
            PIECHART CATEGORY = type / Group = make
            DATALABELLOCATION = INSIDE
            DATALABELCONTENT = ALL
            CATEGORYDIRECTION = CLOCKWISE
            DATASKIN = SHEEN 
            START = 180 NAME = 'pie';
            DISCRETELEGEND 'pie' /
            TITLE = 'Car Types';
         ENDLAYOUT;
      ENDGRAPH;
   END;
RUN;
PROC SGRENDER DATA = cars1
            TEMPLATE = pie;
RUN;

Quando eseguiamo il codice sopra, otteniamo il seguente output: