2013-08-16 16 views
5

Sto creando un bwplot {reticolo} e vorrei che non visualizzasse i valori anomali. Ecco codice di esempio:rimuovere i valori anomali in bwplot

m <- mtcars 

m$gear <- factor(m$gear) 
m$vs <- factor(m$vs) 
m$am <- factor(m$am) 

bwplot(drat ~ gear | am + vs, 
    data = m) 

risposta

5

Basta impostare do.out=FALSE, in questo modo:

bwplot(drat ~ gear | am + vs, data = m, do.out = FALSE) 

Pro consiglio: come è spesso il caso con reticolo funzioni tramando, tale argomento è documentato nella ?panel.bwplot (la funzione a cui bwplot() passa su) piuttosto che nel già leggibile-?bwplot.

+0

Per caso sai come ridurre la scala dell'asse y dopo aver rimosso i valori anomali? Mi rimane un sacco di spazio bianco. Ho cercato di trovarlo, ma francamente abbastanza perso con reticolo ancora. Grazie – Tania

+0

Potrei capirlo, ma francamente probabilmente sarà più facile per te solo: (1) eseguire 'bwplot()' una volta come sopra; (2) dai un'occhiata alla trama e decidi cosa vorresti che fossero i limiti y; (3) specificare quelli tramite, ad esempio, 'ylim = c (2.5, 4.5)'. –

+0

Se si desidera automatizzare il calcolo di limiti più appropriati, è necessario eseguire la propria funzione 'prepanel', riffing di ciò che è in 'prepanel.default.bwplot()'. Dovrebbe calcolare le statistiche di boxplot allo stesso modo di 'panel.bwplot()' (il bit più rilevante è questo: 'tapply (y, factor (x, levels = levels.fos), stats, coef = coef , do.out = do.out) ', dove' stats' è in realtà la funzione 'boxplot.stats'). Potrebbe quindi utilizzare i componenti dell'elenco risultante per calcolare il pezzo 'ylim' dell'elenco restituito dalla funzione di prepanel personalizzata. Come ho detto, non facile! –

4

Prova questa:

bwplot(drat ~ gear | am + vs,data = m, 
     par.settings=list(plot.symbol=list(pch=NA))) 

Il valore anomalo simboli sono controllate attraverso il plot.symbol, che si arriva a via par.settings.

Problemi correlati