Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[13.59.25.2] |
|
Сообщ.
#1
,
|
|
|
Установлен Lazarus 0.9.26b + Win Xp
Работает ли тут вообще Tchart? как добавить серию? в Delphi 7 всё просто и понятно настраивается, а тут не знаю что и куда.. |
Сообщ.
#2
,
|
|
|
Цитата Extremo @ Работает.Работает ли тут вообще Tchart? Цитата Extremo @ Правой кнопкой мыши на Chart-е щелкни, и выбери... Хм... Как же оно называется... Edit, по-моему. Вылезет окошко, в нем уже в меню "Добавить" - выбираешь тип серии, который тебе нужен. Вроде все просто и понятно... Редактировать свойства серии можно прямо из Object Inspector-а... как добавить серию? |
Сообщ.
#3
,
|
|
|
Это в Delphi так, а в Lazarus'e по правой кнопке у меня вот что
Прикреплённый файлМеню.JPG (29.7 Кбайт, скачиваний: 1589) |
Сообщ.
#4
,
|
|
|
Цитата Extremo @ Это ты кому другому расскажешь, ладно?Это в Delphi так Я сказал: Цитата volvo877 @ , а ты куда щелкнул? Правой кнопкой мыши на Chart-е щелкни |
Сообщ.
#5
,
|
|
|
на chart я щёлкнул..на chart..или там как-то "особенно" щёлкать нужно?
1) передо мной форма. 2) левой кнопкой на chart (выделил чарт то бишь) 3) клик правой кнопки 4) Вылезло меню(скрин выше) Может у меня Tchart как-то криво поставился, раз нет его настроек.. Или может программно создать серию? |
Сообщ.
#6
,
|
|
|
Может у кого-нибудь есть проект с рабочим Chart'ом? Может хоть его переделаю. Не создаются Серии(
такое чувство, что у меня компонент не рабочий |
Сообщ.
#7
,
|
|
|
Цитата Extremo @ Нет, вот так, как ты написал, и нужно. Можешь еще попробовать двойной щелчок на Chart-е в Object Inspector-е (или на форме, результат должен быть одинаковый). Ну, а если компонент Chart-таки не рабочий - то тебе ничего не поможет. Тогда и создание серий программно может не сработать.или там как-то "особенно" щёлкать нужно? Вот это, например: procedure TForm1.Button1Click(Sender: TObject); var MyLineSerie: TLineSeries; i, Value: Integer; begin MyLineSerie := TLineSeries.Create(Chart1); MyLineSerie.LinePen.Color := clBlue; Chart1.AddSeries(MyLineSerie); for i := 0 to 20 do begin Value := Random(100); (Chart1.Series[0] as TLineSeries).Add(Value, IntToStr(Value), clBlack); end; end; (по-моему, ничем от Дельфи не отличается), прекрасно работает на Lazarus 0.9.28.2 beta под WinXP SP3. Создается серия, и заполняется случайными значениями. |
Сообщ.
#8
,
|
|
|
Настройки так и не смог открыть..Что-то мне кажется нет их, как таковых. У вас есть?
Сделал всё программно, исходники взял из \components\tachart\demo Спасибо за помощь. |
Сообщ.
#9
,
|
|
|
unit Unit3; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, TAGraph, StdCtrls,TASeries,math; type { TForm3 } TForm3 = class(TForm) Button1: TButton; Chart1: TChart; Edit1: TEdit; Edit2: TEdit; procedure Button1Click(Sender: TObject); private s: TSerie; qw: TSerie; public { public declarations } end; var Form3: TForm3; IntPr,IntS,MNL: real; b,a: real; implementation //uses Unit1, Unit2; { TForm3 } procedure pramoug (a,b: real; n: integer; var s:real); var h,f,x: real; i: integer; *код* s:=s*h; end; procedure Simpson (a,b: real; n: integer; var s2:real); var h,c,f,x: real; i: integer; *код* s2:=h*(3+5*exp(sin(-a))*cos(a)+3+5*exp(sin(-b))*cos(b)+s2)/3; end; procedure TForm3.Button1Click(Sender: TObject); var x:real; begin a:=strtofloat(edit1.text); b:=strtofloat(edit2.text); Chart1.BottomAxis.Visible :=true; Chart1.LeftAxis.Visible :=true; qw:= TSerie.Create(Chart1); qw.ShowLines := true; qw.ShowPoints := false; qw.Pointer.Style := psRectangle; chart1.Visible:=true; MNL:=3*b-5*exp(-sin(b))-(3*a-5*exp(-sin(a))); qw.Clear; {Построение графика для метода прямоугольников} x:=10; while x<=200 do begin pramoug(a,b,ceil(x),IntPr); qw.AddXY(x,abs(MNL-IntPr),'',clred); x:=x+10; end; s:= TSerie.Create(Chart1); s.ShowLines := true; s.Clear; {Построение графика для метода Симпсона} x:=10; while x<=200 do begin Simpson(a,b,ceil(x),IntS); s.AddXY(x,abs(MNL-IntS),'',clgreen); x:=x+10; end; end; initialization {$I unit3.lrs} end. |
Сообщ.
#10
,
|
|
|
Цитата Extremo @ Как ты хочешь, чтоб тебе помогли, если не показываешь код вычисления IntPr и IntS? Эти значения вычисляются нормально, просто не отображаются, или даже не вычисляются? В каком интервале ты работаешь (содержимое Edit1/Edit2)? Это что, все надо телепатически определить? Почему вместо того, чтоб создать TLineSerie ты создаешь просто TSerie? Откуда программа знаешь, как с ней работать (что именно добавлять, точку или линию, например)?почему-то не выводит на chart ничего В конце концов, где ты созданную серию добавляешь к Чарту (я ж выше показывал, как именно это делается)? AddSeries где? Ну заполнилась Серия. Дальше что? Откуда Чарт знает, что ее надо отображать, ты не подумал? |
Сообщ.
#11
,
|
|
|
вот мой проект..
Когда визуализацию метода делал, всё нормально, потом исследование начал проводить погрешностей, не получается, хотя всё по аналогии делал Прикреплённый файлЛАЗАРУС.zip (175.31 Кбайт, скачиваний: 468) |
Сообщ.
#12
,
|
|
|
volvo877 посмотрите пожалуйста, в чём ошибка у меня
|
Сообщ.
#13
,
|
|
|
Я ж сказал, где ошибка.
1) у меня твой проект вообще отказался компилироваться, пока я не добавил в список Uses для Unit2 и Unit3 еще и TAChartUtils (именно там описано перечисление TSeriesPointerStyle, в частности psRectangle, который ты используешь). 2) форма "Визуализация". Где к чарту добавляется серия? Создается она - вижу, но вот добавление - нет. Цитата это просто синтаксическая ошибка, нет метода AddSerie, есть только AddSeries. Исправляй.Chart1.AddSerie(d); 3) форма "Графики погрешностей" - те же яйца, только в профиль. На этот раз нет ни AddSeries, ни даже AddSerie, никаких ошибок, все компилируется, но не работает. В общем, проект, который откомпилировался и отработал (показал все графики) - в аттаче. Но кодировка могла сбиться, у меня не русская Windows, если что. Прикреплённый файлproject_02.zip (28.75 Кбайт, скачиваний: 574) |