Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2014, 10:56   #1
FLIER
Пользователь
 
Регистрация: 28.12.2007
Сообщений: 39
По умолчанию Tchart не могу построить график

Здравствуйте, опыта работы с Tchart нет. После не удачного поиска в гугле, решил задать вопрос тут.

Мне нужно построить график с вот такими входными данными:
Код HTML:
Value;FSEC
 0.260;32  
-1.170;18  
-1.650;26  
-0.770;22  
-1.260;20  
-1.260;26  
-1.760;25  
-2.260;24  
-0.630;23  
-1.510;21  
-1.150;33  
-1.510;18  
-0.050;34  
-0.600;18  
-0.980;34  
-2.260;16  
-0.450;40  
 6.470;29  
 8.730;28  
 3.990;27  
 2.740;28  
 1.140;19  
 2.740;36  
 2.740;28  
 0.000;28  
-0.350;29  
 0.690;80  
 1.200;28  
 1.500;24
где Value - высота по Y, а FSEC - ширина по X

PHP код:
  while qValueLog.Eof <> True do
     
begin
      Value 
:= FieldByName('Value').AsFloat;
      
fsec  := FieldByName('fsec').AsInteger;
      
Chart.Series[0].AddXY(fsecValue);
      
qValueLog.Next;
     
end
Получая вот такой, печальный итог:



Подскажите, как мне задать максимальное значение по X. И как сделать ширину между точками графика равную FSEC. Можно ли сделать его плавным? Спасибо!
FLIER вне форума Ответить с цитированием
Старый 11.12.2014, 12:04   #2
Toxa
Форумчанин Подтвердите свой е-майл
 
Аватар для Toxa
 
Регистрация: 01.12.2006
Сообщений: 514
По умолчанию

Цитата:
Подскажите, как мне задать максимальное значение по X
Код:
chart.bottomaxis.automatic := false;
chart.bottomaxis.maximum := 99;
плавным, на сколько я знаю, не получится, tchart такого не умеет, можно вслючить сглаживание (при создании series поставить галку smooth)
Пишу на Delphi за еду
Toxa вне форума Ответить с цитированием
Старый 11.12.2014, 12:36   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Наверно так
Код:
Value0:=0; fsec0:=0;
while qValueLog.Eof <> True do
  begin
    Value := FieldByName('Value').AsFloat;
    fsec  := FieldByName('fsec').AsInteger;
    for k:=1 to fsec do Chart1.Series[0].AddXY(fsec0+k,Value0+(Value-Value0)*k/fsec);
    Inc(fsec0,fsec);
    Value0:=Value;
    qValueLog.Next;
  end;
Сглаживание по моему есть начиная с XE2 или XE3 TLineSeries.Smoothed
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 11.12.2014 в 13:00.
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Построить график функции, используя компонент TChart. vitalik007 Компоненты Delphi 3 09.06.2014 11:20
Как построить спектр сигнала, график которого в TChart? SantilaS Общие вопросы Delphi 28 29.08.2013 20:05
график в TChart Funy Помощь студентам 1 16.05.2012 16:50
Delphi.TCHART.Не могу построить диаграмму Mazyrik Помощь студентам 0 23.05.2010 22:01