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 :

Subplot dans boucle


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 002
    Par défaut Subplot dans boucle
    Bonjour,

    j'aimerais faire une figure et y ajouter des subplot par itération, qui sont eux mêmes positionnés par itération :

    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
    27
    28
    29
    30
    31
    32
    33
    figure ;
    [...]
    Esub = 0.2; % subplot thick
    Ysub = 0.1 ;
     
    for ii=1:length(filecodecanal)
        % ouverture fichiers et données
        dataName{ii}=[datadir fileroot filecodecanal{ii} '.' solNumb fileappend]
        [DAT,I]=rdmseed2(dataName{ii});
        dataRaw = cat(1,DAT(:).d);
        timeRaw = cat(1,DAT(:).t);
        data{ii,:}=dataRaw(:);
        Head{ii}=I;
        time{ii}=timeRaw;
     
        % calcul spectre des données
        [f{ii},s{ii}] = spectre(data{ii,:},Fs(ii));
     
     
        sub1=subplot('Position',[.05 Ysub .45 Esub]) ;
        set(sub1,'YTick',[],'XTick',[]);
        plot(time{ii},data{ii,:},'k')
        incSub=incSub+2;
     
        hold on
     
        sub2=subplot('Position',[.55 Ysub .45 Esub]) ;
        set(sub2,'YTick',[],'XTick',[]);
        semilogy(f{ii},s{ii})
     
        Ysub = Ysub + (0.6/length(filecodecanal)) 
     
    end
    Pas à pas, le code affiche bien chaque duo de subplot par itération mais efface le précédent quand le nouveau duo de subplot est crée.

    Merci pour toute aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    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 317
    Par défaut
    Les différents objets Axes se superposent. Or c'est impossible avec subplot :

    To overlay axes, use the axes command instead. The subplot function deletes existing axes that overlap new axes. For example, subplot('Position',[.35 .35 .3 .3]) deletes any underlying axes, but axes('Position',[.35 .35 .3 .3]) positions new axes in the middle of the figure without deleting underlying axes.
    Augmente la valeur que tu ajoutes à Ysub à chaque itération et tu verras réapparaitre les axes

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 002
    Par défaut
    Merci, j’utilise "axes" alors, c'est effectivement beaucoup plus pratique et robuste.

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

Discussions similaires

  1. subplot dans une boucle
    Par sanzorairfix dans le forum Général Python
    Réponses: 0
    Dernier message: 18/05/2015, 11h52
  2. [Python 2.X] subplot dans une boucle ?
    Par membreComplexe12 dans le forum Général Python
    Réponses: 8
    Dernier message: 10/02/2015, 19h26
  3. [Ajax] Prob passage de param. dans boucle [DOM]
    Par narnou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 27/02/2006, 16h54
  4. [JLabel] JLabel dans boucle for
    Par clairenes dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 06/01/2006, 00h47
  5. Réponses: 12
    Dernier message: 10/11/2005, 09h05

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