Главная страница
    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.46 MB
Время: 0.007 c
1-22141
N
2001-12-20 10:04
2002.01.08
C -> Pascal: указатель на функцию внутри структуры


6-22286
ReY
2001-10-08 18:07
2002.01.08
Пиплы!!! Нужен ICQ!


1-22128
vinni2000
2001-12-18 17:17
2002.01.08
RichEdit!!!!!!!!!!!!!!!!!


1-22195
LNix
2001-12-15 20:00
2002.01.08
string


3-21975
Dr. Web
2001-12-06 09:12
2002.01.08
создание базы Interbase из программы





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский