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 :

Afficher les points d'une matrice sur un graph


Sujet :

MATLAB

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Juin 2023
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Afficher les points d'une matrice sur un graph
    Bonjour,

    Je cherche actuellement à afficher les valeurs de la même ligne de ma matrice sur une ordonnée fixe. J'ai créer une matrice de zéro dans laquelle je rentre mes valeurs, elles sont enregistrée en colonne et je voudrais afficher chaque point de ma colonne en ordonnée. Il est important que je puisse garder cette matrice A, elle sera modifié par la suite. Savez-vous si il est possible d'afficher ces points dans tous le rectangle mauve (vf image) ?

    Nom : essai.png
Affichages : 103
Taille : 57,5 Ko

    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
    39
    40
     
    maille=30
    retraitx = 50                                
    retraity = 50
    x = 2200                                     
    y = 1300
     
    xr = 2200 - (2*retraitx);                      
    yr = 1300 - (2*retraity);                      
     
    long_fin = floor(xr/maille);                     
    larg_fin = floor(yr/maille);
     
    ex = x/long_fin;                              
    ey = y/larg_fin;                             
     
    long = 1:long_fin;                            
    larg = 1:larg_fin;
     
    axis([-100 2500 -100 1500])
    hold on
    rectangle('Position',[0 0 x y])                                                                     
    rectangle('Position',[retraitx retraity xr yr],'Curvature',0.1,'EdgeColor', 'm')                    
    pas=zeros(1,long_fin)
    A = zeros([long_fin larg_fin])
     
    for i=larg(1):larg(larg_fin)
     
      esp = retraity:maille:yr + retraity;
      pas(i) = (long(i)*maille)+retraitx;
     
      for j=long(1):long(long_fin-1)
     
        A(j,i) = esp(i);
     
      endfor
      a = A'(i,1)
      plot(pas,a,'r+');
     
    end

  2. #2
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 882
    Points : 3 432
    Points
    3 432
    Par défaut
    salut

    il suffit de faire un plot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    M = randi(50,50,50);
    plot(M, 'r.')

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Juin 2023
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour votre réponse.

    La difficulté que je rencontre est surtout de placer les points selon des coordonnés précises. A chaque colonne correspond une valeur de ligne, il me faudrait obtenir un rectangle de point et et non le triangle ci-dessus.

    Est-il possible de conditionner et d'indiquer à la fonction plot l'abscisse et l'ordonnée du point que l'on veut afficher ? Surtout je cherche à m'affranchir de de ce placement automatique de la matrice qui considère que l'abscisse correspond au numéro de la colonne de ma valeur

  4. #4
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 882
    Points : 3 432
    Points
    3 432
    Par défaut
    ce n'est pas un soucis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    vX = randi(200,50,1);
    M = randi(50,50,50);
    plot(vX, M, 'r.')

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Juin 2023
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup, je comprends mieux la fonction plot désormais

  6. #6
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 882
    Points : 3 432
    Points
    3 432
    Par défaut
    de manière général, matlab s'appele ainsi parce que c'est un logiciel de calcul matriciel (et non mathématique)
    les fonctions prennent souvent en argument des vecteurs et/ou des matrices, et cela permet souvent d'économiser des boucles for imbriquées

Discussions similaires

  1. [Débutant] Afficher les donnees d une matrice sur une courbe
    Par bigbossjohn95 dans le forum MATLAB
    Réponses: 1
    Dernier message: 31/08/2017, 21h32
  2. Réponses: 4
    Dernier message: 09/11/2009, 15h56
  3. [MySQL] Afficher les 0 d'une requête sur un INT
    Par Daddy91 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 30/03/2009, 14h21
  4. Réponses: 4
    Dernier message: 24/02/2009, 18h50
  5. [SQL] Afficher les résultats d'une requête sur plusieurs pages
    Par mealtone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/09/2006, 13h20

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