Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 26
1

Построить столбчатую диаграмму

25.07.2014, 23:34. Показов 1801. Ответов 10
Метки нет (Все метки)

Доброго времени суток!
Подскажите пожалуйста, как построить столбчатую диаграмму?
У меня открывается новая форма, на неё передаются значения (4 параметра) и по ним нужно, собственно, строить. Но до меня никак не доходит как их передать TChart.
Заранее благодарю за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.07.2014, 23:34
Ответы с готовыми решениями:

Построить столбчатую диаграмму (гистограмма)
(Консольное приложение) Столбчатая диаграмма(гистограмма) представляет собой набор...

Построить диаграмму ганта
нужна помощь. как посттроить диаграмму ганта в делфи? нужна хотя бы информация, примерные данные во...

не могу построить диаграмму в Chartе
у меня проблемка возникла...никак не могу построить диаграмму у меня есть на одной форме...

Как построить линейную горизонтальную диаграмму?
я пишу тест, и в конце делаю вывод, представленный в виде линейной горизонтальной диаграммой, а вот...

__________________
10
Модератор
63335 / 47046 / 32428
Регистрация: 18.05.2008
Сообщений: 114,040
26.07.2014, 08:51 2
Вот простой пример как построить диаграмму.
0
Вложения
Тип файла: rar TChart_ диаграмма.rar (261.3 Кб, 27 просмотров)
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 26
26.07.2014, 20:56  [ТС] 3
Благодарю)

Добавлено через 5 часов 14 минут
Вновь обращаюсь за помощью. Проект запускается, но выдает ошибку " is not a valid integer value и диаграмму не строит.

Форма с диаграммой:
Код
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, TeEngine, Series, ExtCtrls, TeeProcs, Chart, DbChart,
  TeeFunci;

type
  TForm2 = class(TForm)
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Label3: TLabel;
    Edit2: TEdit;
    Label4: TLabel;
    Edit3: TEdit;
    Edit4: TEdit;
    Label5: TLabel;
    Label6: TLabel;
    Edit5: TEdit;
    Label7: TLabel;
    Label8: TLabel;
    Edit6: TEdit;
    Label9: TLabel;
    Edit7: TEdit;
    Edit8: TEdit;
    Label10: TLabel;
    Label11: TLabel;
    Edit9: TEdit;
    Label12: TLabel;
    Label13: TLabel;
    Edit10: TEdit;
    Label14: TLabel;
    Edit11: TEdit;
    Edit12: TEdit;
    Label15: TLabel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Edit13: TEdit;
    Edit14: TEdit;
    Edit15: TEdit;
    Edit16: TEdit;
    Button1: TButton;
    Chart1: TChart;
    Series1: TBarSeries;
    TeeFunction1: TDivideTeeFunction;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

uses Unit1;

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);
begin
Form2.Hide;
Form1.Show;
end;

procedure TForm2.FormCreate(Sender: TObject);
var i:integer;
begin
i:=1;
for i:=1 to 4 do

 With Series1 do
 begin
 Clear;
  Add(StrToInt(Trim(Form2.Edit13.Text)), 'CO', clYellow);
  Add(StrToInt(Trim(Form2.Edit14.Text)), 'CH', clBlue);
  Add(StrToInt(Trim(Form2.Edit15.Text)), 'NO', clRed);
  Add(StrToInt(Trim(Form2.Edit16.Text)), 'тв.ч.', clPurple);
  end;
 end;

end.
Фрагмент кода, где ведутся вычисления и вывод на форму:
Код
      //расчет  M за час:
     MCO:=StrToFloat(Intensiv)*COk1*COk2*COk3*exp((-6)*ln(10));
       Form2.Edit1.Text:=Form2.Edit1.Text+(FloatToStrF(MCO,ffFixed,20,2));
     MCH:=StrToFloat(Intensiv)*CHk1*CHk2*CHk3;
       Form2.Edit2.Text:=Form2.Edit2.Text+(FloatToStrF(MCH,ffFixed,20,2));
     MNO:=StrToFloat(Intensiv)*NOk1*NOk2*NOk3;
       Form2.Edit3.Text:=Form2.Edit3.Text+(FloatToStrF(MNO,ffFixed,20,2));
     MTV:=StrToFloat(Intensiv)*TVk1*TVk2*TVk3;
       Form2.Edit4.Text:=Form2.Edit4.Text+(FloatToStrF(MTV,ffFixed,20,2));

     //расчет  M за день:
     dMCO:=MCO*24;
      Form2.Edit5.Text:=Form2.Edit5.Text+(FloatToStrF(dMCO,ffFixed,20,2));
     dMCH:=MCH*24;
      Form2.Edit6.Text:=Form2.Edit6.Text+(FloatToStrF(dMCH,ffFixed,20,2));
     dMNO:=MNO*24;
      Form2.Edit7.Text:=Form2.Edit7.Text+(FloatToStrF(dMNO,ffFixed,20,2));
     dMTV:=MTV*24;
      Form2.Edit8.Text:=Form2.Edit8.Text+(FloatToStrF(dMTV,ffFixed,20,2));

     //расчет  M за месяц:
     mMCO:=dMCO*30;
      Form2.Edit9.Text:=Form2.Edit9.Text+(FloatToStrF(mMCO,ffFixed,20,2));
     mMCH:=dMCH*30;
      Form2.Edit10.Text:=Form2.Edit10.Text+(FloatToStrF(mMCH,ffFixed,20,2));
     mMNO:=dMNO*30;
      Form2.Edit11.Text:=Form2.Edit11.Text+(FloatToStrF(mMNO,ffFixed,20,2));
     mMTV:=dMTV*30;
      Form2.Edit12.Text:=Form2.Edit12.Text+(FloatToStrF(mMTV,ffFixed,20,2));

     //расчет  M за год:
     yMCO:=mMCO*365;
      Form2.Edit13.Text:=Form2.Edit13.Text+(FloatToStrF(yMCO,ffFixed,20,2));
     yMCH:=mMCH*365;
      Form2.Edit14.Text:=Form2.Edit14.Text+(FloatToStrF(yMCH,ffFixed,20,2));
     yMNO:=mMNO*365;
      Form2.Edit15.Text:=Form2.Edit15.Text+(FloatToStrF(yMNO,ffFixed,20,2));
     yMTV:=mMTV*365;
      Form2.Edit16.Text:=Form2.Edit16.Text+(FloatToStrF(yMTV,ffFixed,20,2));
0
Модератор
63335 / 47046 / 32428
Регистрация: 18.05.2008
Сообщений: 114,040
26.07.2014, 21:19 4
Цитата Сообщение от akik Посмотреть сообщение
Проект запускается, но выдает ошибку "
Это мой проект или ваш?

Добавлено через 5 минут
Delphi
1
Add(StrToInt(Trim(Form2.Edit13.Text)), 'CO', clYellow);
А Вы уверены что значения у Вас целые? Я например нет, ибо пишете
Delphi
1
 Form2.Edit1.Text:=Form2.Edit1.Text+(FloatToStrF(MCO,ffFixed,20,2));
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 26
27.07.2014, 00:35  [ТС] 5
Ваш проект работает прекрасно, еще раз большое спасибо.
Сейчас попробую исправить.

Добавлено через 6 минут
Нужно так?
Код
 Add(StrToFloat(Trim(Form2.Edit13.Text)), 'CO', clYellow);
0
Модератор
63335 / 47046 / 32428
Регистрация: 18.05.2008
Сообщений: 114,040
27.07.2014, 06:48 6
Если не получается исправить, приложите в тему архив проекта и напишите какие данные вводите.
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 26
02.08.2014, 13:30  [ТС] 7
Ввожу интенсивность 50000 и тип автотранспорта "легковые".
0
Вложения
Тип файла: rar Загрязнения.rar (533.2 Кб, 7 просмотров)
Модератор
63335 / 47046 / 32428
Регистрация: 18.05.2008
Сообщений: 114,040
02.08.2014, 15:34 8
А где unit1 и его причандалы...
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 26
02.08.2014, 22:13  [ТС] 9
Упс, наверное это))
0
Вложения
Тип файла: rar Лена.rar (314.4 Кб, 12 просмотров)
Модератор
3475 / 2599 / 740
Регистрация: 19.09.2012
Сообщений: 7,966
02.08.2014, 22:21 10
Введи начальные значения в поля Text для Form2.Edit13 - 16.
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 26
03.08.2014, 15:00  [ТС] 11
FIL, благодарю.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.08.2014, 15:00

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Считать данные из текстового файла, и по ним построить круговую диаграмму
Ребята! Помогите, пожалуйста, написать прогу в Делфи 7. Мучаюсь уже несколько недель - ничего не...

Построить диаграмму "количества вхождений чисел"
построить диаграмму "количества вхождений чисел", используя chart. вот, собственно код procedure...

Построить столбчатую диаграмму C++
Помогите на писать код на C++. Построить столбчатую диаграмму — набор прямоугольников, высоты...

Построить столбчатую диаграмму
помогите срочно как можно быстрее зарание благодарен Годовой выпуск предприятием белого...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.