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

Interfaces Graphiques Discussion :

plot change la taille de la figure


Sujet :

Interfaces Graphiques

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 147
    Points : 72
    Points
    72
    Par défaut plot change la taille de la figure
    Hello,

    Je suis entrain de réaliser une interface graphique pour un code au moyen de "guide".

    J'effectue un plot sur une figure mais celui-ci élargi la taille de la figure dans l'interface graphique. ca déborde sur les boutons environants, voir figure. Comment faire pour que le plot ne déforme pas la taille de l'objet axes?

    Merci
    Images attachées Images attachées  

  2. #2
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    Et si tu nous montrais ton code ?
    Comment utilises-tu plot ?
    Les axes sont pré-créés (je suppose puisque tu nous donnes peu d'info) ?
    Règles du Forum

    Adepte de la maïeutique

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 147
    Points : 72
    Points
    72
    Par défaut
    Effectivement, je n'ai rien touché options des axes; voici le code:
    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
    34
    35
    36
    37
    38
    axes(handles.Plotattaque)
        set(gca,'NextPlot','add')
     
        subplot(3,2,1)
        plot(time,x(:,1)); hold on
        title('Corde MI aigu ')
        xlabel('temps')
        ylabel('amplitude')
     
        subplot(3,2,2)
        plot(time,x(:,2)); hold on
        title('Corde SI ')
        xlabel('temps')
        ylabel('amplitude')
     
        subplot(3,2,3)
        plot(time,x(:,3)); hold on
        title('Corde SOL ')
        xlabel('temps')
        ylabel('amplitude')
     
        subplot(3,2,4)
        plot(time,x(:,4)); hold on
        title('Corde RE ')
        xlabel('temps')
        ylabel('amplitude')
     
        subplot(3,2,5)
        plot(time,x(:,5)); hold on
        xlabel('temps')
        ylabel('amplitude')
        title('Corde LA ')
     
        subplot(3,2,6)
        plot(time,x(:,6)); hold on
        xlabel('temps')
        ylabel('amplitude')
        title('Corde MI grave ')

  4. #4
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    Pas facile de reproduire ton problème comme cela.
    A partir de quel subplot le format est-il changé ?

    Tu peux peut-être essayé juste après les axes(handles...):
    Règles du Forum

    Adepte de la maïeutique

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 147
    Points : 72
    Points
    72
    Par défaut
    et bien tous je crois... c'est la figure dans sa totalité qui est élargie. Avant de lancer le programme, ma figure ressemble au fichier joint.
    Images attachées Images attachées  

  6. #6
    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 882
    Points
    52 882
    Par défaut
    As-tu essayé en mettant les objet Axes dans un Uipanel ?
    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)

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 147
    Points : 72
    Points
    72
    Par défaut
    Super, alors là ça marche parfaitement. Cependant, maintenant j'aimerai rajouter ultérieurement des éléments à mes subplot quand je met un "vu" aux checkbox du dessous. Je procède comme ceci:
    Au démarrage le premier plot apparaît:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    axes(handles.Plotattaque)
    set(gca,'NextPlot','add')
    subplot(3,2,1)
    (...)
    Par la suite dans les callbacks des checkbox j'aimerai pouvoir rajouté des points au graph:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function Affiattaque_Callback(hObject, eventdata, handles)
     
    axes(handles.Plotattaque)
    set(gca,'NextPlot','add')
     
    if (get(hObject,'Value') == get(hObject,'Max')) & handles.done == 1
    	% Checkbox is checked-take approriate action
        subplot(3,2,1)
        if Onset{1}{1}
            plot(Onset{1}{1},0.004,'pr'); hold on
        end 
     
    (...)
    Cependant j'ai une erreu sur le handle:
    ??? Error using ==> figure
    Error while evaluating uicontrol Callback

    ??? Error using ==> axes
    Invalid object handle
    Error in ==> MusicdetectionGUI>Affitempo_Callback at 656
    axes(handles.Plotattaque)
    je ne comprends pas car le handle est bien "Plotattaque"...

  8. #8
    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 882
    Points
    52 882
    Par défaut
    Je crois que tu n'as pas bien compris ce que fait la fonction SUBPLOT.
    Cette fonction crée des objets Axes répartis de façon uniforme.

    Donc ton premier Axes (celui qui est présent à l'ouverture de l'interface) ne sert à rien.

    Il vaudrait mieux utiliser directement SUBPLOT pour créer les 6 objets Axes vides avec chacun un tag qui permettrait de les retrouver par la suite avec la structure handles
    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)

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 147
    Points : 72
    Points
    72
    Par défaut
    merci pour l'info,

    j'ai changé mon code et maintenant ça marche bien!

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

Discussions similaires

  1. contenu fixe lorsque l'on change la taille de la fenêtre
    Par paolo2002 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 16/05/2008, 19h05
  2. [HttpUnit] upload file - le fichier qui change de taille
    Par Yannos94 dans le forum Tests et Performance
    Réponses: 1
    Dernier message: 05/09/2007, 14h29
  3. Bouton"commandButon" change de taille !
    Par Pratchett dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 21/08/2007, 11h59
  4. Gérer la taille d'une figure
    Par Surikat14 dans le forum MATLAB
    Réponses: 2
    Dernier message: 10/08/2007, 10h32
  5. Réponses: 3
    Dernier message: 22/07/2002, 14h19

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