bar histogramme de barres

## Séquence d'appel

                bar(y)
                bar(x, y)
                bar(x, y, width, colors, style)
                bar(x, y [,width] [,colors] [,style])
                bar(h, x, y ..)

## Paramètres

h

  un pointeur sur les axes, (par défaut: h=gca() ).

y

  scalaire, vecteur de taille N, ou matrice (N_lignes * M_colonnes) de nombres réels ou d'entiers encodés, avec

  - N : nombre de groupes de barres. Chaque groupe est rassemblé à (proximité de) la position x dédiée.
  - M : nombre de catégories = nombre de barres dans chaque groupe.
x

  scalaire, ou vecteur de taille N. Par défaut,

  - Si `y` est un vecteur : `x=1:length(y)`
  - Si `y` est une matrice : `x=1:size(y,"r")`
width

  (optionnel), un scalaire, définit l'épaisseur des barres (un pourcentage de l'epaisseur maximum autorisé pour une barre), par défaut: width=0.8, i.e 80%.

colors

  (option) String unique (commune), ou vecteur de M strings : noms des couleurs des M catégories (choisis dans la liste Scilab des noms prédéfinis), ou codes hexadécimaux de celles-ci (du type "#RRGGBB"). Par défaut, la série de couleurs utilisées par défaut par plot() est utilisée, commençant par "blue".

style

  (option) 'grouped' (par défaut), ou 'stacked'.

## Description

`bar(y,...) :` si y est un vecteur, alors bar() dessine une polyline unique de type `polyline_style=6`, avec `x=1:length(y)`. Si y est une matrice de taille N*M, alors bar() dessine M polylines de (type 6), avec x=1:size(y,1) ; chaque polyline correspond alors à une colonne de y, et à une catégorie, avec sa propre couleur .

`bar(x,y,...) :` comme `bar(y,...) :`, mais en indiquant explicitement les N positions x des groupes.

`bar(h,...) :` definit les axes courants ou le dessin est réalisé.

`bar(...,width,...) :` definit la largeur relative des barres : 0<width<=1.

`bar(...,style,...) :` dans le cas ou y est une matrice l'option style definit la façon dont les barres sont positionnées les unes par rapport aux autres. Si y est une matice N*M (donc M polylines de type 6) alors il y a 2 façons de dessiner ces M barres. l'option style fixée à grouped' permet de centrer les M polylines par rapport aux abscisses (i.e par rapport à chaque composantes de x), et l'option style fixée à 'stacked' permet de les empiler.

`bar(...,colors,...) :` definit les couleurs des catégories de barres. Toutes les barres d'une même catégorie sont remplies avec la même couleur.

S'il y a plusieurs appels à la fonction bar(), la fonction `barhomogenize` permet d'homogénéiser l'épaisseur et le style de toutes les barres (i.e les polylines de type 6) inclus dans les axes courrants.

## Exemples

    // Premier exemple : dessine une barre, avec les paramètres width=0.5
    // et colors='yellow' et par défaut x=1:length(y), style = 'grouped'.
    scf(0);
    y=[1 -3 5];
    bar(y,0.5,'yellow');

y=[1 -3 5]; bar(y,0.5,'yellow');

    // Deuxième exemple : par défaut style='grouped'
    scf(1);
    x=[1 2 5]; y=[1  -5 6;3 -2 7;4  -3 8];
    bar(x,y);

x=[1 2 5]; y=[1 -5 6;3 -2 7;4 -3 8]; bar(x,y);

    // Troisième exemple : dessine 3 bars (nombre de colonnes de y) style='stacked'.
    scf(2);
    x=[1 2 5]; y=[1 4 7;2 5 8;3 6  9];
    bar(x,y,'stacked');

x=[1 2 5]; y=[1 4 7;2 5 8;3 6 9]; bar(x,y,'stacked');

    // Quatrième exemple; width=0.2;colors='green'; par défaut style='grouped'
    scf(3);
    x=[1 2 5]; y=[1 4 7;2 5 8;3 6 9];
    bar(x,y,0.2,'green');

x=[1 2 5]; y=[1 4 7;2 5 8;3 6 9]; bar(x,y,0.2,'green');

## Voir aussi

- barh
- barhomogenize
- histplot
- plot
- couleurs prédéfinies
- polyline_properties
- bar3d

## Historique

6.0.1

- Un vecteur de M couleurs peut désormais être fourni, une couleur pour chaque catégorie.
- Les couleurs utilisables ne sont plus restreintes à la liste des 10 couleurs majeures utilisées par plot(). Toutes les couleurs nommées prédéfinies dans Scilab sont utilisables.
- Les couleurs peuvent désormais être indiquées également par leur code hexadécimal "#RRGGBB".