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 :

nuage de points


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 20
    Points
    20
    Par défaut nuage de points
    Bonjour,

    je suis complètement débutante en MATLAB et je souhaite que vous pouvez m'aider. je possède un tableau (3 colonnes et 100 lignes):

    Pays X Y
    P1 x1 y1
    P2 x2 y2
    ... ... ...
    P(i) xi yi

    La première colonne est un vecteur des pays. ainsi pour chaque pays P(i) correspond deux coordonnées l'une est sur l'axe des X et l'autre sur l'axe des Y (xi, yi). je cherche à tracer le nuage des points tout en spécifiant le nom du pays sur chaque point au niveau du graphique. est-ce que c'est faisable avec MATLAB?

    Merci d'avance

  2. #2
    Membre éprouvé
    Avatar de soft001
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2008
    Messages
    409
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 409
    Points : 1 146
    Points
    1 146
    Par défaut
    Oui c'est possible, tu peux utiliser, par exemple :

    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    annotation('textbox',[x y w h])
    Si tu trouves ma réponse utile, n'oublies pas de voter pour ce me message

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 20
    Points
    20
    Par défaut
    Merci bien ça marche mais j'ai deux autres problèmes:

    - En utilisant plot(x,y) j'arrive pas à tracer la nuage des points. il y a toujours un trait qui relie les points
    - je veux que chaque point possède une couleur différente de l'autre. comment ça se fait s'il vous plaît?
    enfin, y a t-il d'autres codes car je possède 180 pays et en utilisant le code "text (x,y,'string')" je dois entrer les pays un par un et ça prend beaucoup du temps.

    Merci d'avance

  4. #4
    Membre éprouvé
    Avatar de soft001
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2008
    Messages
    409
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 409
    Points : 1 146
    Points
    1 146
    Par défaut
    tu dois regarder les options de la fonction plot ; 'LineStyle', 'Marker'...

    Un conseil, regardes aussi :

    et
    Si tu trouves ma réponse utile, n'oublies pas de voter pour ce me message

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 20
    Points
    20
    Par défaut
    Merciiiii

  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 20
    Points
    20
    Par défaut
    bonjour,

    pour ajouter un texte sur chaque point (nom du pays) dans mon scatter j'ai essayé avec votre proposition
    ça marche bien mais le problème est que je possède 90 observations donc ça va prendre beaucoup du temps. En plus le nom du pays est affiché en NOIR et je veux qu'il soit être affiché avec la même couleur du point. Comment ça se fait s'il vous plaît.

    Merci d'avance

  7. #7
    Membre éprouvé
    Avatar de soft001
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2008
    Messages
    409
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 409
    Points : 1 146
    Points
    1 146
    Par défaut
    Une solution rapide avec boucle for, certainement, on peut faire sans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    close all
    Data = rand(5,2);
    Clolr=rand(5,3);
    Str=num2str((1:5)');
    scatter(Data(:,1),Data(:,2),20,Clolr)
    Textindex=text(Data(:,1),Data(:,2)+0.05,Str(:));
    for i=1:size(Textindex,1)
        set(Textindex(i),'color',Clolr(i,:))
    end
    Si tu trouves ma réponse utile, n'oublies pas de voter pour ce me message

  8. #8
    Membre à l'essai
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 20
    Points
    20
    Par défaut
    Merci bien SOFT001 ça fonctionne mais au lieu de donner les noms des pays il donne un numéro pour chaque point. j'essaye donc d'intégrer mon vecteur des pays au niveau de Str :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    >> Data = rand(5,2);
    Clolr=rand(5,3);
    Str= Pays;
    scatter(Data(:,1),Data(:,2),20,Clolr)
    Textindex=text(Data(:,1),Data(:,2)+0.05,Str( : ));
    for i=1:size(Textindex,1)
        set(Textindex(i),'color',Clolr(i,: ))
    end
    mais le message d'erreur suivant s'affiche:

    Error using text
    Each string specified must have a corresponding set of coordinates
    je sais que c'est banal mais je suis vraiment débutante et je trouve pas comment je dois procéder.

    Merciii

  9. #9
    Membre éprouvé
    Avatar de soft001
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2008
    Messages
    409
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 409
    Points : 1 146
    Points
    1 146
    Par défaut
    Avant de répondre à ta question je t'invite avec insistance à regarder le Tutoriel Matlab.

    Citation Envoyé par doctorante 2013 Voir le message
    Merci bien SOFT001 ça fonctionne mais au lieu de donner les noms des pays il donne un numéro pour chaque point.
    Dans l'exemple que j'ai donné, j'ai essayé de faire simple et à la place de mettre des noms de pays j'ai mis un nombre. Tu dois alors remplacer ces nombres par les noms des pays.

    Citation Envoyé par doctorante 2013 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Data = rand(5,2);
    Clolr=rand(5,3);
    Str= Pays;
    scatter(Data(:,1),Data(:,2),20,Clolr)
    Textindex=text(Data(:,1),Data(:,2)+0.05,Str( : ));
    for i=1:size(Textindex,1)
        set(Textindex(i),'color',Clolr(i,: ))
    end
    mais le message d'erreur suivant s'affiche:

    Error using text
    Each string specified must have a corresponding set of coordinates

    je sais que c'est banal mais je suis vraiment débutante et je trouve pas comment je dois procéder.

    Merciii
    C'est bien, tu as essayé de faire ce que j'ai demandé dans le premier point, mais puisque tu as pas encore regardé des tutoriels, tu as...
    Rep :
    La taille de Str, je parle de nombre de lignes, est 90. Cependant, dans l'exemple que j'ai donné, tu as seulement 5 points.
    Si tu trouves ma réponse utile, n'oublies pas de voter pour ce me message

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

Discussions similaires

  1. Equation d une sphere a partir d un nuage de points
    Par MDiabolo dans le forum Algorithmes et structures de données
    Réponses: 27
    Dernier message: 05/05/2006, 16h40
  2. Plan a partir d'un nuage de points
    Par Pedro dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 10/04/2006, 15h34
  3. nuage de points
    Par uriotcea dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 25/03/2006, 10h29
  4. nuages de points sont-ils dans une zone??
    Par smedini dans le forum Algorithmes et structures de données
    Réponses: 26
    Dernier message: 21/02/2006, 11h01
  5. interpolation couleur entre nuage de points
    Par soubre dans le forum OpenGL
    Réponses: 2
    Dernier message: 02/07/2005, 15h52

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