dessine un histogramme
[cf, ind] = histplot(n, data, <opt_args>) [cf, ind] = histplot(x, data, <opt_args>)
entier strictement positif (nombre de classes)
vecteur (strictement croissant) definissant les classes
vecteur (contenant les données à analyser)
Représente une séquence de la forme clé1=valeur1,
clé2=valeur2
,... où clé1,
clé2,... peut être n'importe quel paramètre optionnel de plot2d
(style,strf,leg, rect,nax, logflag,frameflag, axesflag) ou encore normalization.
Pour ce dernier la valeur correspondante est un scalaire booléen
(la valeur par défaut étant %t).
Cette fonction dessine un histogramme des données contenues dans le vecteur data
en utilisant les classes x. Quand le nombre de classes n est fourni
au lieu de x, celles-ci sont définies de manière équirépartie et telles que
x(1) = min(data) < x(2) = x(1) + dx < ... < x(n+1) = max(data)
avec dx = (x(n+1)-x(1))/n.
Les classes sont définies par C1 = [x(1), x(2)] puis Ci = ] x(i), x(i+1)] pour i = 2,3,...,n.
En notant Nmax le nombre total de données (Nmax = length(data)) et Ni le nombre de données
se situant dans Ci, la valeur de l'histogramme pour x appartenant à Ci
est égale à Ni/(Nmax (x(i+1)-x(i))) quand normalization est vrai
(comportement par défaut) et sinon elle vaut simplement Ni. Quand l'histogramme
est normalisé il vérifie la propriété suivante :

quand x(1)<=min(data) et max(data) <= x(n+1)
N'importe quel paramètre optionnel de plot2d peut être passé à histplot ; par exemple
pour dessiner votre histogramme avec la couleur numéro 2 (du bleu si vous utilisez la carte
des couleurs standard) tout en restreignant le dessin au le rectangle [-3,3]x[0,0.5],
vous pouvez utiliser histplot(n,data, style=2, rect=[-3,0,3,0.5]).
La commande histplot() sans argument montre un example.
d=rand(1,10000,'normal'); clf();histplot(20,d) clf();histplot(20,d,normalization=%f) clf();histplot(20,d,leg='rand(1,10000,''normal'')',style=5) clf();histplot(20,d,leg='rand(1,10000,''normal'')',style=16, rect=[-3,0,3,0.5]); | ![]() | ![]() |

d = grand(1000,1,"bin", 6, 0.5); c = linspace(-0.5,6.5,8); clf() subplot(2,1,1) [cf, ind] = histplot(c, d, style=2) xtitle("l''histogramme normalisé") subplot(2,1,2) [cf, ind] = histplot(c, d, normalization=%f, style=5) xtitle("l''histogramme non normalisé") | ![]() | ![]() |

lambda = 2; X = grand(100000,1,"exp", 1/lambda); Xmax = max(X); clf() histplot(40, X, style=2) x = linspace(0,max(Xmax),100)'; plot2d(x,lambda*exp(-lambda*x),strf="000",style=5) legend(["histogramme d''un échantillon E(lambda)" "densité exacte"]); | ![]() | ![]() |
