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 :

Construction d'une matrice avec meshgrid


Sujet :

MATLAB

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 38
    Par défaut Construction d'une matrice avec meshgrid
    Bonjour,

    Débutant Matlab, je souhaiterais construire une matrice de cette forme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    1 1 1 2 2 2 3 3 3
    1 2 3 1 2 3 1 2 3
    1 1 1 1 1 1 1 1 1
    On m'a indiqué qu'il était possible de le faire avec un Meshgrid

    J'ai donc réalisé la structure de la matrice avec meshgrid

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    x=1:9
    z=1:3
     
    [a,b]=meshgrid(x,z)
    Ici j'obtiens
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    1 2 3 4 5 6 7 8 9
    1 2 3 4 5 6 7 8 9
    1 2 3 4 5 6 7 8 9
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    1 1 1 1 1 1 1 1 1
    2 2 2 2 2 2 2 2 2
    3 3 3 3 3 3 3 3 3
    De là je ne parviens pas à voir comment arriver au résultat voulu... je tatonne un peu (et mes connaissances en traitement matriciel sont également assez maigres...), auriez-vous des pistes ?

    Merci !

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 38
    Par défaut
    En faisant cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    x=1:3
     
    z=1:3
     
    [a,b]=meshgrid(x,z)
    r=transpose(a)
    c=transpose(b)

    j'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    r =
     
         1     1     1
         2     2     2
         3     3     3
     
     
    c =
     
         1     2     3
         1     2     3
         1     2     3

    J'ai donc "un peu" ce qu'il me faudrait, , reste à savoir comment construire une matrice à partir de ça...

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 38
    Par défaut
    Du coup j'ai trouvé ce que je voulais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    a(1,1:9)=reshape(a(1:9),1,9)
    a(2,1:9)=reshape(b(1:9),1,9)
    a(3,1:9)=1
    Maintenant je souhaiterais que cette technique marche mais en utilisant des matrices différentes... X variant par exemple de 1 à 4 et Y de 1 à 16

    Le soucis est désormais que toutes les 3 lignes je souhaite avoir une ligne de 1...

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    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 317
    Par défaut
    Citation Envoyé par anthonynguyen0 Voir le message
    X variant par exemple de 1 à 4 et Y de 1 à 16
    À quoi correspondent X et Y ? Ce n'est pas très clair.

  5. #5
    Membre Expert
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Par défaut
    Bonjour,

    Une autre idée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ajout=@(x) [x 2*x 3*x;repmat(x.*[1 2 3],1,3);repmat(x.*zeros(1,3),1,3)]
    ajout([1 1 1])

Discussions similaires

  1. Construire une matrice avec excel 2007
    Par Ksawery dans le forum Excel
    Réponses: 2
    Dernier message: 02/03/2009, 13h51
  2. Réponses: 16
    Dernier message: 17/11/2008, 13h46
  3. Créer une matrice avec TImage
    Par yann87 dans le forum Langage
    Réponses: 4
    Dernier message: 16/04/2008, 16h42
  4. Calculer une matrice avec la méthode de EULER
    Par lematlabeur dans le forum MATLAB
    Réponses: 7
    Dernier message: 05/11/2007, 18h22
  5. Redimensionner une matrice avec "reshape"
    Par kmaniche dans le forum Images
    Réponses: 9
    Dernier message: 07/06/2006, 18h35

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