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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2010, 16:54   #1
stud3nt
Пользователь
 
Регистрация: 26.06.2010
Сообщений: 17
По умолчанию Создание графиков

Прошу помощи в создании программы, нужно с помощью TChart нарисовать три графика по трем функциям:
y = sin(x);
y = 1/x2;
x = sin(t), y = cos(t)
stud3nt вне форума Ответить с цитированием
Старый 30.10.2010, 21:35   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

http://www.programmersforum.ru/showthread.php?t=13839
Пробуй пример
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.10.2010, 00:17   #3
dmitriegorovih
Ещё не
Форумчанин
 
Аватар для dmitriegorovih
 
Регистрация: 04.01.2010
Сообщений: 517
По умолчанию

Код:
var
  Form1: TForm1;
  x,y,x1,y1,i,z:integer;
  x2,y2:real;
implementation

{$R *.dfm}

function uravnenie(x:real):real;
begin
result:=result+x;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
form1.DoubleBuffered:=true;
//image1:=Tbitmap.Create;
image1.Width:=paintbox1.Width;
image1.Height:=paintbox1.Height;
image1.Canvas.MoveTo(image1.Width div 2,0);
image1.Canvas.LineTo(image1.Width div 2,image1.Height);
image1.Canvas.MoveTo(0,image1.Height div 2);
image1.Canvas.LineTo(image1.Width,image1.Height div 2);
x2:=(image1.Width/2)*(-1);
for i:=1 to 725000 do begin
x2:=x2+0.001;
y2:=uravnenie(x2);
y:=y+y1;
x:=x+x1;
setpixel(image1.Canvas.Handle,Round(x2+(image1.Width/2)),Round((image1.Height/2)-y2),clred);
x2:=x2+0.001;
y2:=uravnenie(x2);
y:=y+y1;
x:=x+x1;
setpixel(image1.Canvas.Handle,Round(x2+(image1.Width/2)),Round((image1.Height/2)-y2),clred);
x2:=x2+0.001;
y2:=uravnenie(x2);
y:=y+y1;
x:=x+x1;
setpixel(image1.Canvas.Handle,Round(x2+(image1.Width/2)),Round((image1.Height/2)-y2),clred);
end;
image1.Canvas.Refresh;
end;
Воображение важнее, чем знания. (Albert Einstein)
dmitriegorovih вне форума Ответить с цитированием
Старый 31.10.2010, 14:03   #4
stud3nt
Пользователь
 
Регистрация: 26.06.2010
Сообщений: 17
По умолчанию

dmitriegorovih, извините, а вы не могли бы это в проекте сделать и мне скинуть, а то я не могу найти некоторые некоторые вещи у себя, и расставить компоненты не выходит
stud3nt вне форума Ответить с цитированием
Старый 01.11.2010, 11:35   #5
krGorka
Пользователь
 
Регистрация: 26.04.2010
Сообщений: 35
По умолчанию

C Chart : надо создать 3 Series на Chart и ,например, на кнопку бросить приблизительный код
Код:
procedure TForm1.BitBtn1Click(Sender: TObject);
var i,n:integer;
    x,y1,y2:array[0..10000] of single;
    t1,t2:single;
begin
   n:=360;
   Series3.XValues.Order:=loNone;
   for i:=0 to n-1 do
    begin
     x[i]:=(-n/2+i);
     y1[i]:=sin(x[i]*pi/180);
     if x[i]<>0 then y2[i]:=1.0/sqr(x[i])
                else y2[i]:=100;
     Chart1.Series[0].AddXY(x[i],y1[i],'',clRed);
     Chart1.Series[1].AddXY(x[i],y2[i],'',clGreen);
     t1:=y1[i];
     t2:=cos(x[i]*pi/180);
     Chart1.Series[2].AddXY(t1,t2,'',clBlue);
    end;
end;
krGorka вне форума Ответить с цитированием
Старый 01.11.2010, 11:37   #6
krGorka
Пользователь
 
Регистрация: 26.04.2010
Сообщений: 35
По умолчанию

желательно добавить некую нормировку, а то графики неочень красиво смотрятся
krGorka вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
построение графиков Алёна Microsoft Office Excel 9 27.02.2016 10:00
Создание графиков(например декартов лист) DUMOH Компоненты Delphi 10 21.12.2008 23:10
Создание графиков в формате bmp AleksP Общие вопросы C/C++ 1 09.10.2008 17:10
MathCad - создание графиков file Помощь студентам 1 20.06.2008 19:21
Построение графиков на C# TheGuardian123 Общие вопросы .NET 2 29.01.2008 14:50