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 :

Affichage de plusieurs courbes dans une fonction


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2014
    Messages : 21
    Par défaut Affichage de plusieurs courbes dans une fonction
    Bonjour,

    Je suis en train de travailler sur un programme et même s'il marche, je souhaiterai l'améliorer un peu afin de le rendre plus exploitable
    Dans ce programme, j'ai une boucle (n itérations) qui fait appel à deux fonctions. Chacune de ces fonctions trace un graphique. Pour l'instant, lorsque je compile le programme, ce dernier m'affiche 2*n graphiques
    J'aimerai afficher toutes les courbes sur le même graphique afin de n'en avoir plus que 2 : un pour la fonction 1 et un pour la fonction 2

    Voici le programme que j'utilise pour l'instant

    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
    directory_name =uigetdir();
    [folder, files]=subdir(directory_name);
    folderSize=length(folder);
     
     
    for folder_i=1:folderSize
     
     
            Acell=reading(fullfile(folder{folder_i})); 
     
     
              [Em, Dm]=avg(fullfile(folder{folder_i}));
     
     
    end
    J'ai essayé de mettre un hold on et hold off, ou hold all et ca ne marche pas
    Je ne peux pas séparer la boucle en deux car j'ai besoin de la fonction reading pour appliquer avg à chaque itération

    Merci d'avance

  2. #2
    Membre chevronné
    Homme Profil pro
    Éternel universitaire
    Inscrit en
    Avril 2012
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Éternel universitaire

    Informations forums :
    Inscription : Avril 2012
    Messages : 421
    Par défaut
    Bonjour,

    Tu peux associer des handles à tes graphiques lors de leur création :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    h1=figure(1);
    h2=figure(2);
    Lorsque tu veux tracer sur ta figure 1, avant d'utiliser plot tu spécifies la figure courante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set(0, 'currentfigure', h1);

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2014
    Messages : 21
    Par défaut
    Salut, et merci pour ta réponse. Du coup, la première partie, ou tu associes h1 et h2 aux figures 1 et 2, tu le mettrais ou ? dans le programme principal ou dans les fonctions correspondantes ?

    Parce que dans les deux cas, ca me met que h1 n'est pas défini

  4. #4
    Membre chevronné
    Homme Profil pro
    Éternel universitaire
    Inscrit en
    Avril 2012
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Éternel universitaire

    Informations forums :
    Inscription : Avril 2012
    Messages : 421
    Par défaut
    Tu définis tes handles h1 et h2 à l'extérieur de la boucle dans ton script principal. Ensuite la spécification des axes courants dépend de comment sont écris tes deux fonctions reading et avg. Mais pour faire simple, tu peux juste passer les handles en argument de tes fonctions (comme ça h1 et h2 existeront bien à l'intérieur de ces fonctions)

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2014
    Messages : 21
    Par défaut
    D'accord merci, ca a l'air de marcher pour une des deux fonctions mais pas pour l'autre. Est ce que c'est exactement le même procédé pour une représentation semi logarithmique (semilogy) ?

  6. #6
    Membre émérite
    Homme Profil pro
    Doctorant automatique
    Inscrit en
    Janvier 2012
    Messages
    446
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Doctorant automatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 446
    Par défaut
    Salut,

    Lorsque tu utilises semilogy, rajoutes ceci lors de son appel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    semilogy('parent', h2, ....);
    hold on;
    Cordialement,

Discussions similaires

  1. affichage de plusieurs images dans une même figure
    Par kawther dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 20/02/2009, 18h45
  2. Réponses: 6
    Dernier message: 23/02/2008, 11h17
  3. plusieurs return dans une fonction?
    Par contremaitre dans le forum C
    Réponses: 27
    Dernier message: 21/02/2008, 09h35
  4. Affichage de plusieurs courbes dans un meme "axes"
    Par DOC doc doc dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 11/09/2007, 11h04
  5. Affichage d'un vector dans une fonction
    Par jamesleouf dans le forum SL & STL
    Réponses: 1
    Dernier message: 16/03/2006, 19h05

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