Вопрос

Я создаю подсвечникную графику, представляющую цены на акции.После создания я хочу добавить зеленый круг, показывающий, где / когда я покупаю запас.

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;
.

Проблема в том, что если myexecutytable.buyprice имеет значение между открытым и близким, круг не отображается.Я думаю, это скрыто под подсвечником.Следовательно, я пытался использовать Uistack, но без успеха.Когда я меняюсь на

plot(myExecutionTable.BuyDate,myExecutionTable.BuyPrice+100,'og')
. Затем появляется зеленый круг (над подсвечником)

Спасибо, Серж

Это было полезно?

Решение

Самый простой способ убедиться, что один графический объект находится сверху другого (а не ниже), чтобы построить его позже .

Если по какой-то причине вы не можете сделать это таким образом, вы также можете манипулировать порядком дочерних объектов осей:

h = get(gca, 'Children');
.

Возвращает вектор графических ручек.Обмен ручкой между позициями в этом векторе (более высокий индекс означает выше сверху), а затем запишите его с помощью

set(gca, 'Children', h)
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top