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 :

Modifier les axes : noms, valeurs limites et couleur [Débutant]


Sujet :

MATLAB

  1. #1
    Débutant
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 193
    Points : 58
    Points
    58
    Par défaut Modifier les axes : noms, valeurs limites et couleur
    bonsoir

    j'aimerai modifier les axes de mon images ainsi que les couleurs pour l'affichage

    pour les abscisses, je voudrais que l'on appelle ça longitude, allant de -18.125° à 28.125° pour les limites et un affichage de 1,25 en 1,25

    pour les ordonnées, je voudrais que l'on apelle ça latitude, allant de 4,5° à 20,5° pour les limites avec un affichage de 1 en 1

    pour l'index j'amerai appelé ça indice d'epaisseur optique et si possible afficher les memes valeurs mais diviser par 10
    est ce possible de changer les couleurs pour etre plus explicite entre les valeurs 0 et 10 (pour le premier affichage) pour mieux distinguer les differences

    j'ai essayé avec les XLIM, YLIM, Axis([xmin xmax ymin ymax]), xtick, ytick, xlabeltck, ylabeltick mais je mélange tout

    merci pour l'aide
    je vous mets en fichier zip le programme en entier et le fichier txt de départ

    programme et fichier texte.zip

  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 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
    Citation Envoyé par niepoc Voir le message
    pour les abscisses, je voudrais que l'on appelle ça longitude, allant de -18.125° à 28.125° pour les limites et un affichage de 1,25 en 1,25

    pour les ordonnées, je voudrais que l'on apelle ça latitude, allant de 4,5° à 20,5° pour les limites avec un affichage de 1 en 1
    Bon jusque la j'arrive à suivre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    set(gca,'xlim',[-18.125 28.125],'xtick',-18.125:1.25:28.125,...
    'ylim',[4.5 20.5],'xtick',4.5:20.5)
    xlabel('Longitude')
    ylabel('Latitude')
    Citation Envoyé par niepoc Voir le message

    pour l'index j'amerai appelé ça indice d'epaisseur optique et si possible afficher les memes valeurs mais diviser par 10
    est ce possible de changer les couleurs pour etre plus explicite entre les valeurs 0 et 10 (pour le premier affichage) pour mieux distinguer les differences
    La par contre, je ne comprends rien
    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)

  3. #3
    Débutant
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 193
    Points : 58
    Points
    58
    Par défaut
    merci dut pour la réponse

    lorsque je colle le code à mon programme ça me donne une figure supplémentaire, ça serait parfait si c'était les axes de l'image qui sont changés.
    pour l'axe des longitudes c'est illisible je vais essayer de trouver le problème, j'ai l'impression que ça commence pas au début de l'axe en fait

    concernant la citation que tu comprends pas c'est pour la legende de l'image

    le choix des couleurs est intéressant il permet de bien distinguer les valeurs de 0 à 27, mais j'aimerais que la distinction entre les valeurs 0 et 15 soit plus nette et également j'aimerais changer l'affichage des valeurs, pour ce cas c'est 0 à 27, j'aimerais écrire de 0 à 2,7 si c possible et mettre un nom à ces valeurs: indice d'epaisseur optique


    ce raisonnement a pour but (j'ai un doute si c'est réalisable avec matlab) de pouvoir renseigner, en utilisant le data cursor, la position du pixel (latitude et longitude) et sa valeur d'indice d'epaisseur optique car en fait je vais, sur chaque image, chercher cinq points significatifs et créer des masques moyenneurs(5, 7, 9) autour de ces points pour faire les analyses

    merci pour l'aide précieuse une nouvelle fois

    bonne journée

  4. #4
    Débutant
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 193
    Points : 58
    Points
    58
    Par défaut
    Bonjour

    j'ai essayé plusieurs methodes pour nommer mes axes et affreter les valeurs mais j'ai un dernier souci j'ai un décalage sur l'affichage de l'image


    voilà le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    figure 
     
    imagesc(MAT),title('AOT selon la latitude et la longitude','Color','b'),ylabel('Latitude'),xlabel('Longitude')
     
    set(gca,'xlim',[-18.125 28.125],'xtick',-18.125:1.25:28.125,'ylim',[4.5 20.5],'ytick',4.5:1:20.5)
     
     
     
    axis image
    et voilà le résultat
    Nom : image.jpg
Affichages : 1241
Taille : 61,9 Ko

    je comprends pas d'ou provient ce décalage, il faudrait que pour les latitudes le 4.5 soit la première valeur et 20.5 la dernière.
    pour les longitudes il faudrait que la 1ère soit -18.125 et la derniere 28.125 mais j'ai peur que ça soit illisible par la suite, trop de valeurs.
    est il possible d'en supprimer ou est ce possible de les orienter pour que cela soit lisible??

    merci pour l'aide

    une derniere question concernat la legende est qu'avec matlab, il est possible de changer les couleurs entre 0 et 15 pour mieux les distinguer (ici c'est que du bleu)

    merci par avance

    bonne journée

  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
    Essaie quelque chose comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    imagesc([-18.125 28.125],[4.5 20.5],MAT)
    Pour ton problème de légende, utilise la fonction CAXIS pour ajuster la plage des couleurs utiles.
    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
    Débutant
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 193
    Points : 58
    Points
    58
    Par défaut
    merci pour la réponse

    avec ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    figure 
     
    imagesc([-18.125 28.125],[4.5 20.5],MAT), title('AOT selon la latitude et la longitude','Color','b'),ylabel('Latitude'),xlabel('Longitude')
     
    %set(gca,'xlim',[-18.125 28.125],'xtick',-18.125:1.25:28.125,'ylim',[4.5 20.5],'ytick',4.5:1:20.5)
     
    axis image
    j'obtiens une image qui commence à 4 pour les latitudes et qui finit à 20, et pour les longitudes elle commence de - 18 jusqu'à 28 elle prend pas en compte les chiffres aprés la virgule pour les deux cas
    par contre l'affichage est bon il est de 2 en 2 pour les latitudes et de 3 en 3 pour les longitudes

    avec ce code ci
    f
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    igure 
     
    imagesc([-18.125 28.125],[4.5 20.5],MAT), title('AOT selon la latitude et la longitude','Color','b'),ylabel('Latitude'),xlabel('Longitude')
     
    set(gca,'xlim',[-18.125 28.125],'xtick',-18.125:1.25:28.125,'ylim',[4.5 20.5],'ytick',4.5:1:20.5)
     
    axis image
    j'obtiens cette image c parfait pour les latitudes mais illisible pour les longitudes
    Nom : image.jpg
Affichages : 1193
Taille : 62,9 Ko

    en utilisant le data cursor (icone avec le + et le trait bleu) de la figure j'ai mes renseignements(latitude,longitude du point et valeur) c'est parfait, par contre quand je clique sur un pixel, j'ai un décalage pour l'affichage c'est bizarre, c'est pas sur celui que je clique que j'obtiens les infos!!!!

    merci pour l'aide

  7. #7
    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
    Citation Envoyé par niepoc Voir le message
    j'obtiens cette image c parfait pour les latitudes mais illisible pour les longitudes
    Voir la : Comment incliner les labels des repères des axes abscisses d'un graphique ?
    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)

  8. #8
    Débutant
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 193
    Points : 58
    Points
    58
    Par défaut
    j'ai regardé le lien de la FAQ, j'ai pas la fonction Xticklabel_rotate sur ma version de matlab, elle n'est pas dans l'help quand Je la cherche

    si vous avez une autre idée???

  9. #9
    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
    Les liens te permettent de télécharger sur le site de The Mathworks les fonctions qui permettent de le faire.
    Règles du Forum

    Adepte de la maïeutique

  10. #10
    Débutant
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 193
    Points : 58
    Points
    58
    Par défaut
    exact j'avais pas vu le petit icone

    ça marche mais j'ai un message aprés l'obtention de l'image

    Warning: You may need to manually reset the XLABEL vertical position
    > In xticklabel_rotate90 at 50
    In programme at 148
    ça signifie quoi???

    une derniere retouche si c'est possible, maintenant que j'ai les nombres avec une rotation de 90°, il cache le nom 'longitude' est ce possible de le descendre de quelques lignes?

    merci pour l'aide voilà 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
    figure 
     
    imagesc([-18.125 28.125],[4.5 20.5],MAT), title('AOT selon la latitude et la longitude','Color','b'),ylabel('Latitude'),xlabel('Longitude')
     
    set(gca,'xlim',[-18.125 28.125],'ylim',[4.5 20.5],'ytick',4.5:1:20.5)%,'xtick',-18.125:1.25:28.125)
     
    xticklabel_rotate90([-18.125:1.25:28.125]);
     
    %choix des valeurs a représenter pour une meilleure distinction
     
    %Caxis ([0 15])
     
    axis image

  11. #11
    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
    Citation Envoyé par niepoc Voir le message
    une derniere retouche si c'est possible, maintenant que j'ai les nombres avec une rotation de 90°, il cache le nom 'longitude' est ce possible de le descendre de quelques lignes?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    h = get(gca,'xlabel');
    pos = get(h,'position');
    pos(2) = -0.1; % Valeur à ajuster
    set(h,'position',pos)
    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)

  12. #12
    Débutant
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 193
    Points : 58
    Points
    58
    Par défaut
    merci dut

    ça marche nickel, pour mon cas la valeur est 24 pour mettre le titre sous l'image et sous mes valeurs
    code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    h = get(gca,'xlabel');
     
    pos = get(h,'position');
     
    pos(2) = 24; % Valeur à ajuster
     
    set(h,'position',pos)

    un grand merci pour ton aide precieuse

    bonne journée

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

Discussions similaires

  1. [XL-2007] Trouver et modifier les cellules aux valeurs erronées
    Par Yam71 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 03/01/2014, 14h27
  2. [Vxi3] modifier les listes de valeurs
    Par gwena2b dans le forum Webi
    Réponses: 4
    Dernier message: 04/10/2013, 15h31
  3. [JFreeChart] Modifier les axes
    Par TekP@f dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 30/03/2010, 18h26
  4. Modifier les listes de valeurs sous WEBI
    Par Haopl dans le forum Webi
    Réponses: 1
    Dernier message: 17/03/2009, 14h02
  5. Comment modifier les axes d'un graphique
    Par AC88mm dans le forum MATLAB
    Réponses: 3
    Dernier message: 03/04/2007, 10h34

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