IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

[bar] Modification des couleurs et des labels


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut [bar] Modification des couleurs et des labels
    Mon problème se trouve dans le fichier en attaché. Dedans, il y a un graphe que j'aimerais obtenir, et ce que j'ai pour l'instant.

    Mon souci se situe au niveau de des abscisses et du choix des couleurs des bars.

    Je vous remercie d'avance de l'attention que vous porterez à mon posting, et si vous savez m'aider, ça serait vraiment cool...

    Merci d'avance....

    Didier
    Fichiers attachés Fichiers attachés

  2. #2
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut une partie de la solution
    Voici ( en attaché) ce que j’ai pu obtenir grâce à ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function hText = xticklabel_rotate(XTick,rot,varargin)
    Une fonction que j’ai pu télécharger sur le net ici.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    figure(2)
    bar(y)
    st = {'e = 0'  'Flat|e = 0,5' 'Squealer|e = 0,5' 'Flat|e = 1,5' 'Squealer|e = 1,5' 'Flat|e = 3' 'Squealer|e = 3'};
    xticklabel_rotate(1:7,90,st,'interpreter','none')
    grid on;
    Ce que je n’arrive pas encore à faire, c’est mettre deux lignes en abscisse comme sur la figure 'objectif' en attachée et puis, le choix des couleurs pour chaque bar.
    Images attachées Images attachées   

  3. #3
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Une possibilité :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    y =  [0.1731    0.1881    0.1891    0.2333    0.2326    0.3527    0.2948]
    figure(2)
    bar(y)
     
    st1 = {'e = 0' 'Flat' 'Squealer' 'Flat' 'Squealer' 'Flat' 'Squealer'};
    st2 = {     ''  'e = 0,5' 'e = 0,5' 'e = 1,5' 'e = 1,5' 'e = 3' 'e = 3'};
     
    xt = [1:7];
    yt = [ones(1,7)*-.03];
    text(xt,yt,st1,'hor','center','rotation',90,'vert','bottom');
    text(xt,yt,st2,'hor','center','rotation',90,'vert','top');
    set(gca,'xticklabel','')
     
    grid on;
    Il faudra peut être ajuster la valeur de yt...
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  4. #4
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Avancement
    Merci Dut pour ton aide. Tu m'as donné une très bonne idée qui est ci-dessous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    figure(2)
    bar(y,0.6);xxx = [0.8 1.2 1.8 2.2 2.8 3.2 3.8 4.2 4.8 5.2 5.8 6.2 6.8 7.2];
    st = {'Without Gap' 'e = 0 mm' 'Flat Tip' 'e = 0,5 mm' 'Squealer Tip' ...
        'e = 0,5 mm' 'Flat Tip' 'e = 1,5 mm' 'Squealer Tip' 'e = 1,5 mm' ...
        'Flat Tip' 'e = 3 mm' 'Squealer Tip' 'e = 3 mm'};
    xticklabel_rotate(xxx,45,st,'Fontsize',11)
    grid on;
    Est le résultat se trouve sur la figure jointe (avancement)! Cependant, il me reste à définir les couleurs des bars. J'aimerais avoir les mêmes couleurs que celles sur la figure 'objectif jointe également.

    Je vous remercie d'avance...
    Images attachées Images attachées   

  5. #5
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    y =  [0.1731    0.1881    0.1891    0.2333    0.2326    0.3527    0.2948]
     
    figure(2)
    h = bar(y,0.6);xxx = [0.8 1.2 1.8 2.2 2.8 3.2 3.8 4.2 4.8 5.2 5.8 6.2 6.8 7.2];
     
    map =[0 0 128
    	155 155 255
        255 200 150]./255
     
    set(gcf,'colormap',map)
     
    hh = get(h,'children');
     
    col = [1 1 1 1 1 1 1
    	1 2 3 2 3 2 3
        1 2 3 2 3 2 3
        1 2 3 2 3 2 3
        1 2 3 2 3 2 3];
     
    set(hh,'facevertexcdata',[col(:);1])
     
    st = {'Without Gap' 'e = 0 mm' 'Flat Tip' 'e = 0,5 mm' 'Squealer Tip' ...
        'e = 0,5 mm' 'Flat Tip' 'e = 1,5 mm' 'Squealer Tip' 'e = 1,5 mm' ...
        'Flat Tip' 'e = 3 mm' 'Squealer Tip' 'e = 3 mm'};
    xticklabel_rotate(xxx,45,st,'Fontsize',11)
    grid on;
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  6. #6
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Merci DUT
    C'est parfait! Je te remercie infiniment pour ton aide! J'espère que ça pourra aider aussi ceux qui rencontre la même difficultée. Pour ceux là, je mets le code final.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    figure(2)
    h = bar(y,0.6);
    xt = [0.8 1.2 1.8 2.2 2.8 3.2 3.8 4.2 4.8 5.2 5.8 6.2 ...
        6.8 7.2];
    map =[0 0 128
    	155 155 255
        255 200 150]./255;
    set(gcf,'colormap',map);
    hh = get(h,'children');
    col = [1 1 1 1 1 1 1
    	1 2 3 2 3 2 3
        1 2 3 2 3 2 3
        1 2 3 2 3 2 3
        1 2 3 2 3 2 3];
    set(hh,'facevertexcdata',[col(:);1]);
    st = {'Without Gap' 'e = 0 mm' 'Flat Tip' 'e = 0,5 mm' 'Squealer Tip' ...
        'e = 0,5 mm' 'Flat Tip' 'e = 1,5 mm' 'Squealer Tip' 'e = 1,5 mm' ...
        'Flat Tip' 'e = 3 mm' 'Squealer Tip' 'e = 3 mm'};
    xticklabel_rotate(xt,45,st,'Fontsize',11)
    grid on;
    Je te remercie vraiment. Je crois que je vais soumettre un autre problème que j'ai. Maintenant le temps de l'expliciter.

    Une bonne après midi.

    Didier

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. representer des valeurs par des couleurs
    Par Fatehcz dans le forum MATLAB
    Réponses: 4
    Dernier message: 14/12/2011, 12h37
  2. Réponses: 6
    Dernier message: 06/10/2011, 23h22
  3. Mettre des textures et des couleurs sur les objets
    Par MaTtaW dans le forum PhysX et APEX
    Réponses: 5
    Dernier message: 31/07/2009, 17h42
  4. Algorithm correction des couleurs (balance des blancs et autre)
    Par immuno dans le forum Traitement d'images
    Réponses: 10
    Dernier message: 19/12/2008, 22h26
  5. [VBA-W] Mettre des couleurs ds un label
    Par jagdjg dans le forum VBA Word
    Réponses: 6
    Dernier message: 30/03/2006, 15h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo