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 :

Taille identique de plusieurs graphiques


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 16
    Points : 14
    Points
    14
    Par défaut Taille identique de plusieurs graphiques
    Bonjour,

    Je désire tracer deux graphiques sur une même fenêtre, dont la taille de l'un d'entre eux a été modifiée par la commande axis equal.

    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
    figure ;
    ax1 = subplot(2,1,1) ;
    plot(Xv1,Yv1,':k') ; hold on ;
    plot(Xh1,Yh1,':k') ; hold on ;
    plot(Lon_rs,Lat_rs,'.k','MarkerSize',20) ;
    plot(C(:,1),C(:,2),'k') ;
    axis equal ;
    axis([LonN LonX LatN LatX]) ;
    set(gca,'XTick',Lon1(1:2:size(Lon1,1)),'YTick',Lat1(1:2:size(Lat1,1))) ;
    
    ax2 = subplot(2,1,2) ;
    plot(M(:,1),M(:,2),'*k','MarkerSize',8) ; grid ;
    xlabel('D (°)','FontSize',10) ;
    ylabel('R²','FontSize',10) ;
    A l'origine, je n'avais pas mis la commande axis equal et le graphique ax1 n'était pas beau du tout (cf. première image jointe).

    Du coup, je me retrouve avec deux graphiques de taille différente (cf. seconde image jointe).

    J'ai fouillé et je me suis inspiré de la fonction 'Position', qui renvoie 4 valeurs [left bottom width height]. Après être passé en mode manuel set(ax2,'PlotBoxAspectRatioMode','manual'), j'ai ajouté la portion de code suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    V1 = get(ax1,'Position') ;
    V2 = get(ax2,'Position') ;
    set(ax2,'PlotBoxAspectRatioMode','manual')
    set(ax2,'Position',[V2(1) V2(2) V1(3) V2(4)]) ;
    Ce qui donne rend le second graphique carré (cf. troisième image jointe).

    Que faire ? Y a-t-il d'autres options pour modifier le second graphique ? N'y a-t-il pas une solution directement avec l'interface graphique ?
    Images attachées Images attachées    

Discussions similaires

  1. axes identiques pour plusieurs graphique
    Par melreg dans le forum MATLAB
    Réponses: 2
    Dernier message: 24/08/2010, 09h32
  2. Réponses: 2
    Dernier message: 03/06/2008, 08h50
  3. Réponses: 2
    Dernier message: 14/06/2007, 11h47
  4. panels taille identique
    Par krokmitaine dans le forum Delphi
    Réponses: 6
    Dernier message: 21/09/2006, 22h51
  5. [Debutant] Fixer la taille d'une interface graphique
    Par etiennegaloup dans le forum AWT/Swing
    Réponses: 9
    Dernier message: 25/02/2006, 12h03

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