формат к. оси в TChart

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
theUnicorn
незнакомец
Сообщения: 9
Зарегистрирован: 29.10.2010 01:16:10

формат к. оси в TChart

Сообщение theUnicorn »

подскажите как поменять формат оси координат с числового на текст, дату? возможно ли это в лазарусе на стандартном TChart ? перерыл все свойства :shock: BottomAxis.. AxisLabel голова кругом
Аватара пользователя
dunin
энтузиаст
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и
Контактная информация:

Сообщение dunin »

theUnicorn
незнакомец
Сообщения: 9
Зарегистрирован: 29.10.2010 01:16:10

Сообщение theUnicorn »

я читал этот пост. у моей оси нет события OnMarkToText :? подскажите хотя бы где скачать компонент для lazarus-a, в котором можно построить график и в котором меняются форматы осей.
Ask
постоялец
Сообщения: 163
Зарегистрирован: 25.12.2008 02:51:37

Сообщение Ask »

Какая версия Lazarus?
theUnicorn
незнакомец
Сообщения: 9
Зарегистрирован: 29.10.2010 01:16:10

Сообщение theUnicorn »

0.9.28.2 бета
Ask
постоялец
Сообщения: 163
Зарегистрирован: 25.12.2008 02:51:37

Сообщение Ask »

Лучше всего поставить snapshot.
В 0.9.28.2 вроде бы OnMarkToText всё-таки есть, BottomAxis.Marks.OnMarkToText
но Я даже точно не помню.
theUnicorn
незнакомец
Сообщения: 9
Зарегистрирован: 29.10.2010 01:16:10

Сообщение theUnicorn »

скачал. сейчас разбираться буду. спасибо за совет :!:

Добавлено спустя 21 час 5 минут 17 секунд:
почему то не отмечаются на оси точки 2,4,6 :|
а где настройки Scale, Offset ?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ask
постоялец
Сообщения: 163
Зарегистрирован: 25.12.2008 02:51:37

Сообщение Ask »

См. axisdemo
Там есть и пример с датами, и пример с использованием Scale/Offset
theUnicorn
незнакомец
Сообщения: 9
Зарегистрирован: 29.10.2010 01:16:10

Сообщение theUnicorn »

а, точно. слышал про axisdemo, просто его на прошлой версии lazarus не было.
giao
новенький
Сообщения: 46
Зарегистрирован: 24.11.2009 21:33:18
Откуда: Украина

Сообщение giao »

Вопрос не в тему. Просто себе сделал PolarSeries. Кто ответственный, и кому можно свой набросок кинуть? В роадмэпе читал, что Polar в разработке, может улегчить жизнь создателю?

Добавлено спустя 18 минут 6 секунд:
И еще вопрос в топку. Смотрел WxWidgets и порт для делфей, тоже крос, но размер Дельфовский. Попробовать порт сделать (наподобие WxForms), есть желание у кого-нить? Такой себе fork fpGUI. Через полтора месяца появится свободное время
theUnicorn
незнакомец
Сообщения: 9
Зарегистрирован: 29.10.2010 01:16:10

Сообщение theUnicorn »

Вобщем, я так и не разобрался как сделать, чтобы lazarus не делал автоматически шаг 2, если добавляется больше 10ти значений в TChart. Я тупой, как гранитная глыба) Помогайте.
Ask
постоялец
Сообщения: 163
Зарегистрирован: 25.12.2008 02:51:37

Сообщение Ask »

giao писал(а):Вопрос не в тему. Просто себе сделал PolarSeries. Кто ответственный, и кому можно свой набросок кинуть? В роадмэпе читал, что Polar в разработке, может улегчить жизнь создателю?


Я ответственный.
Заходи на на http://bugs.freepascal.org, создавай feature request и клади туда код :-)

Добавлено спустя 10 минут 59 секунд:
theUnicorn писал(а):Вобщем, я так и не разобрался как сделать, чтобы lazarus не делал автоматически шаг 2, если добавляется больше 10ти значений в TChart. Я тупой, как гранитная глыба) Помогайте.


TChart берёт данные из объектов типа T???ChartSource, аналогично TDataSource для компонент работы с БД.
У каждой series есть "встроенный" source, но можно использовать и внешний.
Стандартный вариант -- TListChartSource, хранящий в себе просто список точек,
которые можно добавлять методом Add.
Source можно использовать не только для данных, но и для меток осей.
Напимер, если свойству BottomAxis.Marks.Source присвоить тот же source,
который используется для данных, то гарантируется, что метки всегда будут только
в точках данных, независимо от масштаба.
Если Я правильно понял из картинки, то это твой случай.
(Кстати, в axisdemo, страница Customized marks, в точности он и рассмотрен).

Ещё можно создать, например, TUserDefinedChartSource, который выдаёт данные с чётными
координатами X и использовать его.
theUnicorn
незнакомец
Сообщения: 9
Зарегистрирован: 29.10.2010 01:16:10

Сообщение theUnicorn »

Ask, спасибо за помощь.
Ответить