Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Вниз

Chart   Найти похожие ветки 

 
Анатолий   (2001-12-17 06:36) [0]

Как уменьшить время построения графиков с помощью модуля Chart.
Я на модуле строю четыре линии Series типа Fast line. Работаю с Delphi версии 4 на ПК Pentium 166. Построение кривых выполняется несколько минут. Как ускорить построение графика? Большая точность мне не нужна.


 
Mbo   (2001-12-17 06:52) [1]

должно быть порядка секунды при разумных количествах точек.
сколько у тебя точек и какой размер ОЗУ (памяти)?
приведи код.


 
Fellomena   (2001-12-17 10:27) [2]

У меня на Duron650 192PC133 Huindai при большом кол-ве точек (больше 250) обычный график (с точками, т.е. не fastline)
тоже немного тормозится (секунд 5-6 бывает).
Что бы быстрее этот процес шёл, ...хм... может приоритет проги поднять попробывать ?


 
Alx2   (2001-12-17 11:57) [3]

Может не стоит рисовать много точек? Например,можно попробовать уменьшить их количество за счет какой-нибудь интерполяции.


 
Fellomena   (2001-12-17 12:29) [4]

Alx2:
угу, вместотого, что бы своей задачей заниматься, приходится со всякой-всячиной возиться.
...помню я эту интерполяциу... кубическими сплайнами... тьфю -- гадость 8\
(кстати, оч. рада тебя видеть 8)
вы с Mbo всегда мне (и не только)помогаете по части математики и графиков 8)
Спасибо вам огромное, ребята !


 
Alx2   (2001-12-17 12:56) [5]

Felomena:
Взаимно рад :))
По поводу интерполяции: если графики достаточно гладкие, то интерполяция может выглядеть, например, как простое выбрасывание каждой второй точки.


 
Alx2   (2001-12-17 12:57) [6]

Fellomena:
Ну вот! Сорри, что переврал ник.


 
Mbo   (2001-12-17 13:35) [7]

вот это в D3 на P200ммх - 3 секунды FastLine, 5 cек. обычный Line

for i:=1 to 10000 do begin
series1.addxy(i,sin(0.001*i),"",clTeeColor);
series2.addxy(i,sin(0.002*i),"",clTeeColor);
series3.addxy(i,sin(0.003*i),"",clTeeColor);
series4.addxy(i,sin(0.004*i),"",clTeeColor);
end;


 
Fellomena   (2001-12-17 17:23) [8]

2 Mbo: в своём примере используешь примитивный алгоритм изменения i
А попробуй в цикле производить какие-нибудь более громозкие вычисления (да что далеко ходить - многомерная минимизация, пусть даже 2 параметра).
Т.е. каждая точка шага ставится в цикле... Сам счёт, без вывода, проходит быстро, вывод большого кол-ва точек (судя по твоему примеру)тоже не долго...,
но если вывод и счёт совместить - то время ростёт... сильно ростёт...


 
MBo   (2001-12-17 17:30) [9]

Вполне возможно. Это слегка напоминает ситуацию, решаемую с помощью BeginUpdate в боксах.
Вот кода от автора мы еще не видели.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.57 MB
Время: 0.032 c
1-22178
Анастасия
2001-12-15 21:38
2002.01.08
Нужна информация!


14-22390
Ежик
2001-11-08 12:54
2002.01.08
Слушай Мерлин, ты когда нибудь спишь? В смысле, отдыхаешь?


4-22510
Илья
2001-10-14 18:06
2002.01.08
Изменение свойств принтера


3-21898
Delirium
2001-11-30 18:56
2002.01.08
Можно-ли асинхронно запустить хранимую процедуру?


3-21956
Севостьянов Игорь
2001-12-05 17:56
2002.01.08
Программно выполнить SHUTDOWN IMMEDIATE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский