Bonjour à toutes et à tous.
Pour situer un peu le contexte, j'ai créé une fonction qui permet de générer une sorte de cartographie d'un rayonnement d'une antenne en prenant en compte plusieurs phases. (voir image en pièce jointe).
Pour chaque loi de phase (en ordonnée) correspond un diagramme de rayonnement, et un gabarit associé.
Grace aux lignes suivantes:
j'appelle la fonction myupdatefcn qui contient:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 dcm_obj = datacursormode(fig); set(dcm_obj,'UpdateFcn',@myupdatefcn)
et qui permet de faire apparaître sur le curseur les données que je veux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function [txt,fig] = myupdatefcn(empt,event_obj) global l;global diag; pos = get(event_obj,'Position'); txt = {['Direction: ',num2str(pos(1))],... ['Loi de phase: '],... [l{pos(2)}],... ['Niveau (normalisé): ',num2str(diag(pos(2),pos(1)))]};
J'aimerais en même temps que je place le curseur, générer une figure supplémentaire qui affiche le diagramme correspondant.
J'ai essayé d'ajouter à la fonction myupdatefcn
Le problème est que 8 figures s'ouvrent en même temps!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 figure; plot(diag(pos(2),:))
Une idée?
Merci
Partager