![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Добавление элементов в TChart
Darvin © (2013-12-03 17:49:00)Здравствуйте!
Есть компонент TChart, есть в нем TLineSeries (одна).
В цикле я добавляю элементы в эту линию:
Series.Add ( Value, '', clRed );
Сначала все нормально. Затем, через какое-то время начинаются тормоза, за единицу времени добавляется все меньшее количество элементов.
Также, при очистке линии:
if Series.Count > 0 then
Series.Clear;
Скорость добавления не восстанавливается.
Я знаю, что с динамическими массивами лучше работать, выделяя им память сразу, а не постепенно. Это будет быстрее. А если неизвестно, сколько элементов будет в массиве, то лучше выделять сразу большими кусками во избежание тормозов.
Думаю, что здесь проблема похожая. Но, если памятью в динамическом массиве управлять можно, то памятью в чарте, я не знаю, как. Подскажите, пожалуйста!
Darvin (2013-12-13 15:21:00) [1]Спасибо всем. Переписал компонент, в котором в список элементы добавляются поблочно.
По поводу усреднения при выводе буду думать, если заказчик будет недоволен быстротой работы этой реализации
brother (2013-12-04 17:15:00) [2]> несколько тысяч
Вы сами ответили на свой вопрос...
Предложу - загружать усредненные значения, по например, каждой 10ке...
Jeer (2013-12-04 15:59:00) [3]>когда добавлено очень много значений, несколько тысяч
И, конечно же, пользователь просто обязан всех их видеть?
У него пикселей на экране столько не хватит:)
DimaBr (2013-12-04 09:55:00) [4]Внимание!Здесьобсуждаются вопросы, связанные с разработкойкомпонентов, редакторов свойств, редакторов компонентов и экспертов IDE.
Вопросы по поискуи использованиюготовых компонентов, редакторов или экспертов являются нарушениемтематики и могут быть удалены.
Darvin (2013-12-03 17:58:00) [5]Элементы добавляются постоянно. Тормоза появляются, когда добавлено очень много значений, несколько тысяч
brother (2013-12-03 17:51:00) [6]это во время добавления или после?