Построить график(нужен код)

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Построить график(нужен код)

Сообщение dyavolenok_shef » 10.08.2008 14:17:55

Здрасти, всем, помогите, пожалуйста, нужен код:
У меня есть три формы (проект)
Lab5.rar
Лабораторная работа , из которой я беру данные для построения графика;
"Выбор критерия построения графика" - форма где я выбираю по каким критериям у меня будет построен графи(по средним баллам : студентов или предметов ) и уже учитывая это мне нужно на форме построить график, он должен выглядеть примерно как столбчатый график наглядность:
graph.gif

(ну так примерно должно выглядень, только надписи должны быть если студенты, то столбики подписаны соответствующими фамилия и имя студента, если предмет, то название предмета)
ПОмогите, пожалуйста.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
dyavolenok_shef
новенький
 
Сообщения: 17
Зарегистрирован: 31.07.2008 10:27:47

Re: Построить график(нужен код)

Сообщение Padre_Mortius » 11.08.2008 13:06:56

Можно посмотреть компонент TBarChart. Компонент и пример использования идет в комплекте лазарем
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: Построить график(нужен код)

Сообщение dyavolenok_shef » 11.08.2008 18:10:20

Padre_Mortius писал(а):Можно посмотреть компонент TBarChart. Компонент и пример использования идет в комплекте лазарем

Посмотрела вот что получилось

Код: Выделить всё

var
  fmSTUDENTS: TfmSTUDENTS;
  s: TBarSeries;
  x,y: double;

implementation
   uses Unit1,Un_TABLE;
{ TfmSTUDENTS }

procedure TfmSTUDENTS.FormActivate(Sender: TObject);
var  i:integer;
naz:string;
begin
{Creat; }
s := TBarSeries.Create(fmSTUDENTS.Chart1);
fmSTUDENTS.Chart1.AddSerie(s);
s.title := '';
s.YGraphMax:=Y+6; // определяем максимум по оси Y
s.XGraphMin:=X+0; // определяем минимум по оси X
case fmCHOISE.RadioGroup1.ItemIndex of
0:
  Begin
   For i:=1 to Form1.StringGrid1.RowCount-2 do
    If Form1.StringGrid1.Cells[5,i]<>'' then
     BEGIN
      s.Add(StrToFloat(Form1.StringGrid1.Cells[5,i]),Form1.StringGrid1.Cells[0,i],clYellow);
      s.ParentChart.Title.Text.Text:='Средние баллы студентов';
     END;
  End;
  1:
  Begin
   For i:=1 to 4 do
    If Form1.StringGrid1.Cells[i, Form1.StringGrid1.RowCount-1]<>'' then
      s.Add(StrToFloat(Form1.StringGrid1.Cells[i,Form1.StringGrid1.RowCount-1]),Form1.StringGrid1.Cells[i,0],clyellow);
      s.ParentChart.Title.Text.Text:='Средние баллы по предметам';
  End;
end;
end;                         


, не могу понять почему в Add не оттображается Надпись над Столбиками? и как поменять цвет у каждого столбика свой чтобы был?

Добавлено спустя 34 секунды:
Юнит из проекта см. выше
dyavolenok_shef
новенький
 
Сообщения: 17
Зарегистрирован: 31.07.2008 10:27:47

Re: Построить график(нужен код)

Сообщение Padre_Mortius » 11.08.2008 18:22:51

а какой компонент используете?

Добавлено спустя 22 минуты 44 секунды:
clYellow - это цвет. Он может быть выражен не только строковым значением, но цифровой константой. В итоге делаем в цикле изменение цвета и все готово
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Re: Построить график(нужен код)

Сообщение dyavolenok_shef » 11.08.2008 20:59:34

Padre_Mortius писал(а):а какой компонент используете?


компонент TChart

Padre_Mortius писал(а):Добавлено спустя 22 минуты 44 секунды:
clYellow - это цвет. Он может быть выражен не только строковым значением, но цифровой константой. В итоге делаем в цикле изменение цвета и все готово

я же говорю, я плохо в этом соображаю мона через код обьяснять ... Плиз.

Добавлено спустя 1 минуту 59 секунд:
во вложеном файле ПРОЕКТА есть же все... и какой компонент есть..
dyavolenok_shef
новенький
 
Сообщения: 17
Зарегистрирован: 31.07.2008 10:27:47


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: MailRu[bot] и гости: 1

Рейтинг@Mail.ru