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

Signal Discussion :

Récupérer des valeurs en cliquant sur un graphique [Débutant]


Sujet :

Signal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2016
    Messages : 9
    Par défaut Récupérer des valeurs en cliquant sur un graphique
    Bonjour,

    Je suis débutante en Matlab, et j'ai besoin de faire du traitement du signal via Matlab pour mon stage.
    J'aimerai, à partir d'un graphique tracé (plot), récupérer deux valeurs de ce graphe en cliquant simplement sur les zones qui m'intéressent (2 points). Puis, je souhaiterai faire la moyenne des valeurs comprises sur le graphique entre ces 2 points. Je ne m'intéresse pas à la moyenne du temps (en x), mais à mes données en y.
    J'ai essayé en reprenant des exemples trouvés, mais ça ne marche pas..

    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
    data_offset = detrend(MVC);   %Supprimer offset
    figure(10)
    plot(t,data_offset)
    fig = figure(1);
    dcm_obj = datacursormode(fig);
    set(dcm_obj,'DisplayStyle','datatip','SnapToDataVertex','off','Enable','on')
    disp('Click line to display a data tip, then press Return.')
    pause 
    c_info1 = getCursorInfo(dcm_obj);
    set(c_info1.Target,'LineWidth',2) 
     
    fig = figure(10);
    dcm_obj = datacursormode(fig);
    set(dcm_obj,'DisplayStyle','datatip','SnapToDataVertex','off','Enable','on')
    disp('Click line to display a data tip, then press Return.')
    pause 
    c_info2 = getCursorInfo(dcm_obj);
    set(c_info2.Target,'LineWidth',2) 
     
    data_mean=mean(c_info1.Position(:,2):c_info2.Position(:,2));  %2ème colonne pour avoir les y

    Merci pour votre aide !

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Par défaut
    Bonjour,

    Je pense que le plus simple serait d'utiliser la fonction ginput.

  3. #3
    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 Récupérer des valeurs avec la souris
    Bonjour,

    Un exemple comme indiqué par Gooby :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    clear
    x=0:0.1:10;
    y=sin(x);
    plot(x,y)
    grid
    [X,Y] = ginput(1)
    gtext(['  ' num2str(X) '   '  num2str(Y)])
    hold on
    plot(X,Y,'.r','MarkerSize',20)

  4. #4
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2016
    Messages : 9
    Par défaut
    Bonjour,

    J'ai essayé le code que vous m'avez transmis. La fonction ginput récupère les coordonnées de mes deux points et fais la moyenne à partir de la courbe que j'avais au départ, c'est ça ?
    Est-ce qu'il est possible de tracer par dessus la courbe initiale la courbe entre ces deux points ?

    Merci beaucoup pour votre aide !

  5. #5
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Par défaut
    La fonction ginput ne fait que te donner les coordonnées de ta souris sur l'axe au moment où tu cliques. A toi d'effectuer la suite !

    Est-ce que les données de ton graph sont stockées dans un tableau? ça faciliterait un peu la suite du travail

  6. #6
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2016
    Messages : 9
    Par défaut
    Ah ! D'accord je n'avais pas compris, car la fonction me demande de sélectionner deux points alors je pensais que ça faisait la moyenne entre les 2 points. Du coup, pourquoi il me fait en sélectionner deux si finalement il ne retient que la deuxième valeur ?

    (Tous mes graphes sont tracés à partir de tableaux)

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 31/12/2008, 14h39
  2. récupérer des valeurs sur une page web
    Par houwa dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/07/2008, 14h27
  3. Réponses: 3
    Dernier message: 23/10/2007, 13h35
  4. Réponses: 6
    Dernier message: 20/04/2007, 11h38
  5. [Spring MVC] Récupérer des valeurs de formulaires sur n pages
    Par ran_hery dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 07/04/2006, 07h23

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