2010-01-24 12 views
6

Je souhaite créer un histogramme à partir d'un certain nombre d'observations (c.-à-d < - c (1,2.1,3.4,4.5)), puis mettre en évidence la corbeille l'observation tombe, de sorte que j'ai une sortie qui ressemble à ceci: alt text http://img686.imageshack.us/img686/5061/observationhist.pngComment mettre en surbrillance une corbeille d'observation dans un histogramme en R

Comment est-ce que je fais ceci dans R?

+1

Vous pouvez également obtenir quelques idées de cette question connexe: http://stackoverflow.com/questions/1915001/highlighting-specific-values-in-r-plot – Shane

Répondre

7

L'expansion sur la réponse de dangerstat, voici une petite fonction qui sera automatiquement trouver quelle corbeille contient la valeur que vous voulez mettre en surbrillance:

highlight <- function(x, value, col.value, col=NA, ...){ 
    hst <- hist(x, ...) 
    idx <- findInterval(value, hst$breaks) 
    cols <- rep(col, length(hst$counts)) 
    cols[idx] <- col.value 
    hist(x, col=cols, ...) 
} 

maintenant

x <- rnorm(100) 
highlight(x, 1.2, "red") 

mettra en évidence le bac avec 1.2 en rouge.

4
x = rnorm(100) 
hist(x,br=10,col=c(rep(0,9),1)) 

Il est clair que cela va colorer la dernière colonne afin tweak le col = bit pour vos besoins

Merci

dangerstat

+1

c'est comment je le ferais. note, pour les couleurs typiques comme le rouge et le bleu, vous pouvez entrer une chaîne à la place du nombre: 'col = c (" red "," blue ", 9)' – twolfe18