Question

Je crée un graphique de chandelier représentant les prix des actions.Une fois créé, je veux ajouter du cercle vert montrant où / quand j'achète le stock.

hold on;
candle(myData.High, myData.Low, myData.Close, myData.Open, '', myData.Date, 'dd/mm/yy');
m = plot(myExecutionTable.BuyDate,myExecutionTable.BuyPrice,'og')
uistack(m)
hold off;

Le problème est que si myExecueTable.buyprice a une valeur entre l'ouverture et la fermeture, le cercle ne s'affiche pas.Je suppose que c'est caché sous le chandelier.Par conséquent, j'ai essayé d'utiliser Uistack mais sans succès.Quand je passe à

plot(myExecutionTable.BuyDate,myExecutionTable.BuyPrice+100,'og')

Le cercle vert apparaît alors (au-dessus du chandelier)

merci, Serge

Était-ce utile?

La solution

Le moyen le plus simple de vous assurer qu'un objet graphique est sur le dessus d'un autre (et non ci-dessous), est de le tracer plus tard .

.

Si pour une raison quelconque, vous ne pouvez pas le faire de cette façon, vous pouvez également manipuler l'ordre des objets enfants des axes:

h = get(gca, 'Children');

retourne un vecteur de poignées graphiques.Les poignées d'échange entre les positions de ce vecteur (index supérieur signifie plus haut sur le dessus), puis écrivez-le en utilisant

set(gca, 'Children', h)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top