Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

построение графика


Страницы:   1 2

13 ©   (2006-05-17 14:31:00) 

В файле 1.txt находятся координаты точек по оси x
0.003
0.006
0.009
и т.д
В файле 2.txt координаты по оси у
0.002
-0.009
0.006
-0.004
и т.д.
Необходимо построить график использую Chart


13   (2006-05-17 16:24:00) [1]


> Kolan ©   (17.05.06 16:17) [23]

Респект врубился

А ОШИБКУ Я ВСЕТАКИ НАШЕЛ!!!!!!!! УРА
ОГРОМНОЕ СПАСИБО Kolan


Kolan   (2006-05-17 16:17:00) [2]

Strings1.LoadFromFile('File 1Name');
  Strings2.LoadFromFile('File 2Name');

Обрати внимание...

мастера короче вот так и все равно не работает
Отлаживать не умеешь?
File1  File2
1        4
2        5
3        6
Смотрим товй алгоритм. Какие точки он сделает:
(1,4)  (1,5)  (1,6)
(2, 4) (2, 5) (2, 6)
(3, 4) (3, 5) (3, 6)

Понял где ошибка?

И когда говоришь:
мастера короче вот так и все равно не работает
Нужно поиснять что именно не работает, какие ошибки возникаю...


13   (2006-05-17 15:56:00) [3]


> Kolan ©   (17.05.06 15:42) [20]

так тут надо из двух файлов точки брать а у Вас только по одному файлу


13   (2006-05-17 15:43:00) [4]

мастера короче вот так и все равно не работает
procedure TForm1.BitBtn1Click(Sender: TObject);

var
f,f1:Tstrings;
i,j:integer;
x,y:double;
begin
f:=tstringlist.create;
f1:=tstringlist.create;
F.loadfromfile('c:\1.txt');
f1.loadfromfile('c:\2.txt');
for i:=0 to F.count-1 do
 for j:=0 to f1.Count-1 do
begin
  x:=strTofloat(F.strings[i]);
  y:=strTofloat(F.Strings[j]);
end;
series1.AddXY(X, Y);
F1.Free;
F.Free;
end;


Kolan   (2006-05-17 15:42:00) [5]

var
 I: Integer;
 Strings1, Strings2: TStringList;
 X, Y: Double;
begin
 Strings1 := TStringList.Create;
 Strings2 := TStringList.Create;
 try
   Strings1.LoadFromFile('File1Name');
   Strings2.LoadFromFile('File2Name');
   for I := 0 to Strings1.Count - 1 do
   begin
     X := StrToFloat(Strings1[I]);
     Y := StrToFloat(Strings2[I]);
     Series1.AddXY(X, Y);
   end;
 finally
   Strings1.Free;
   Strings2.Free;
 end;
end;


EvS   (2006-05-17 15:38:00) [6]

>Kolan ©   (17.05.06 15:32) [15]
>не

>y:=strTofloat(F.Strings[j]);

>а
>y:=strTofloat(F.Strings[I]);

наверное y:=strTofloat(F1.Strings[I]);


Kolan   (2006-05-17 15:37:00) [7]

Еще не забудь деструкторы вызвать....


EvS   (2006-05-17 15:35:00) [8]

y:=strTofloat(F.Strings[j]) ????


Elen   (2006-05-17 15:34:00) [9]

А зачем пользоваться TStrings? Не проще ли будет по старинке через Readln


Kolan   (2006-05-17 15:32:00) [10]

не

y:=strTofloat(F.Strings[j]);

а
y:=strTofloat(F.Strings[ I]);


13   (2006-05-17 15:27:00) [11]


> те еще раз говорят: создай f1 перед употреблением

да создал просто по памяти писал все равно ошибка такая же
Я  в отладке смотрел в x записывается 9.357540...e-307 а надо при i=0 0.003


Kolan   (2006-05-17 15:24:00) [12]

Издеваешься.
Kolan ©   (17.05.06 15:05) [8] - не смотрел что ли?
procedure TForm1.BitBtn1Click(Sender: TObject);
var
 f,f1:Tstrings;
 i:integer;
 x,y:double;
begin
 f:=tstringlist.create;
 f1:=tstringlist.create;
 F.loadfromfile('c:\1.txt');
 f1.loadfromfile('c:\2.txt');
 for i:=0 to F.count-1 do
 begin
   x:=strTofloat(F.strings[i]);
   y:=strTofloat(F.Strings[j]);
 end;
series1.AddXY(X, Y);
end;
end;


Кстати в алгоритме тоже ошибка. Вот так вроде.
ЗЫ
Писал прям сдесь...


Desdechado   (2006-05-17 15:23:00) [13]

те еще раз говорят: создай f1 перед употреблением


13   (2006-05-17 15:14:00) [14]

Project project1.exe raised exception class EAccessViolation with message 'Access violation at address 00475EEE in module 'Project1.exe''.
Read of address 0575C0EC. Process stopped.  Use Step or Run to continue.


13   (2006-05-17 15:07:00) [15]

вот так должно
procedure TForm1.BitBtn1Click(Sender: TObject);
var
f,f1:Tstrings;
i,j:integer;
x,y:double;
begin
f:=tstringlist.create;
F.loadfromfile('c:\1.txt');
f1.loadfromfile('c:\2.txt');
for i:=0 to F.count-1 do
for j:=0 to f1.Count-1 do
 begin
  x:=strTofloat(F.strings[i]);
  y:=strTofloat(F.Strings[j]);
series1.AddX(x);
series1.AddY(y);
end;
end;


Kolan   (2006-05-17 15:06:00) [16]

Да и еще AddXY пользуй


Kolan   (2006-05-17 15:05:00) [17]

13   (17.05.06 14:59) [4]
f:=tstringlist.create;
А кто F1 создаст? Пушкин? :).
Общий смысл верный.


MetalFan   (2006-05-17 15:05:00) [18]


> но ошибка вылетает

и далеко вылетает?
по подробнее в метрах пожалуйста!


balepa   (2006-05-17 15:03:00) [19]

End'a одного нехватает.
Какая ошибка ?


13   (2006-05-17 15:00:00) [20]

понимаю что лажа поэтому подскажите как лучше


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо