Автор |
Сообщение |
Alexander
Зарегистрирован: 17.01.2008
Сообщения: 14
|
Доброго Всем времени суток!
Искал на Пауке-Амиброкер. Там есть вертикалки для отрисовки границ по месяцам. А мне бы надо внутри цикла for(). Типа при таком то условии и т.д. Горизонтальные линии без проблем в цикле чертятся на LineArray().
Олег, Вы писали на Пауке что это невозможно. Может счас что изменилось? Устроит любой пример.
Line=LineArray(BarCount-2, C[BarCount-1], BarCount-1, C[BarCount-1]*1.01);
Plot(Line,"Line",7,1);
В этом примере рисует косую линию. Стоит поставить х0=BarCount-1 и здрасте.
P.S. Низкоуровневое черчение в АМИ вроде не поможет т.к. прямоугольник должен быть привязан к ценам. |
|
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Не очень помню, что я там на пауке писал. Если нужны вертикальные линии через весь график, то проблем не вижу.
В цикле формируем массив, везде нули а там, где нужна вертикальная линия - единицы. Потом выводим его вот таким макаром
Код: |
Plot(qqqqqqqqqqqq, "", ColorRed, 2 + 32768 + 4096, Minvalue = 0, Maxvalue = 1);
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Alexander
Зарегистрирован: 17.01.2008
Сообщения: 14
|
000 писал(а): |
В цикле формируем массив, везде нули а там, где нужна вертикальная линия - единицы. Потом выводим его вот таким макаром
Код: |
Plot(qqqqqqqqqqqq, "", ColorRed, 2 + 32768 + 4096, Minvalue = 0, Maxvalue = 1);
|
|
Олег, благодарю за наводку. Буду подумать как это реализовать в моем коде.
Еще один вопрос. Можно ли обойтись БЕЗ ЦИКЛОВ или есть ли другие варианты для вывода вертикальных линий от одной конкретной точки до другой? Просто непосредственно на ценовом графике надо вывести прямоугольники. |
|
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
Просто непосредственно на ценовом графике надо вывести прямоугольники. |
Тогда мой способ не подходит. Может сойдут закрашенные прямоугольники? Такие можно сделать. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Alexander
Зарегистрирован: 17.01.2008
Сообщения: 14
|
000 писал(а): |
Может сойдут закрашенные прямоугольники? Такие можно сделать. |
Согласен на любые прямоугольники если они отрисовываются по координатам их же собственных четырех точек. |
|
|
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Вот такие можно
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Там не совсем по координатам 4х точек. Проводишь верхнюю и нижнюю линии. А пространство между ними закрашиваешь при помощи StyleCloud функции PlotOHLC()
Код: |
top = ValueWhen(Day() == 1, H+(H-L)/2);
bot = ValueWhen(Day() == 1, L-(H-L)/2);
top = IIf(Day() < 12, top, Null);
bot = IIf(Day() < 12, bot, Null);
PlotOHLC(top, top, bot, bot, "", colorLightOrange, styleCloud);
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|