Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 17
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Меры близости на векторах в Delphi + Блок схемы
Моделирование интернет магазина (Apache, Php, Html) на GPSS + Блок схема
Обработка задач на ЭВМ на GPSS + Пояснительная записка

Ряды и точки



Мы подошли к самому главному — отображению значений диаграммы. Из-
вестно, что диаграмма может содержать не одну последовательность значе-
ний. Каждая такая последовательность представляет собой ряд, состоящий
из точек.
Точка отражает одно значение из последовательности значений определен-
ного ряда. Точки одного ряда могут быть соединены между собой линиями
или представлять собой отдельные плоские или объемные фигуры, это зави-
сит от выбора типа диаграммы. В любом случае точки имеют между собой
логическую связь и образуют ряды значений. Таким образом, при програм-
мировании значений диаграммы мы имеем дело как минимум с двумя ти-
пами объектов: это объекты, объединенные в коллекцию рядов
SeriesCollection, и объекты, объединенные в коллекцию точек Points. Кол-
лекция точек принадлежит ряду.
Как и любая коллекция, коллекция SeriesCollection обладает свойствами,
позволяющими определить количество элементов этой коллекции, и мето-
дами, обеспечивающими доступ к любому объекту этой коллекции. Метод
Item(i) коллекции SeriesCollection возвращает доступ к элементу Series кол-
лекции. Получив доступ к элементу коллекции, т. е. к ряду диаграммы, мы
имеем возможность настроить его внешний вид. Для этого, как и для анало-
гичных объемных или плоских элементов, используем объекты Border,
Interior и Fill, связанные с параметрами границ и внутренней области объ-
ектов, отображающих точки ряда диаграммы.
Доступ к ряду и его свойствам
var i:integer;
Series:=SeriesCollection(i) ;
Border:=Series.Border;
Interior:=Series.Interior;
Fill:=Series.Fill;



Используя эти свойства, мы можем изменить параметры линии границы
элементов, а также их заливку (рис. 14.15).

Рис. 14.15. Настройка элементов диаграммы
Подписи данных для точек ряда диаграммы также представляют собой гео-
метрические фигуры, содержащие текст. Доступ к ним обеспечивается по-
средством объекта DataLabels, который принадлежит объекту Series из кол-
лекции SeriesCollection. Их внешний вид определяется свойствами линии и
заливки, а также свойствами текста. Свойства текста определяются его ти-
пом, шрифтом, способом выравнивания в рамках прямоугольной области
объекта DataLabels, форматом отображения значений и углом поворота (на-
правлением).
Настройка свойств Подписей данных для точек ряда Диаграммы
DataLabels:variant;
// Выбор типа подписи
procedure T0KBottomDlg8.LabelsTypeChange(Sender: TObject);
begin
case LabelsType.Itemlndex of
0: XlDataLabelsType:=xlDataLabelsShowNone;
1: XlDataLabelsType:=xlDataLabelsShowValue;
2: XlDataLabelsType:=xlDataLabelsShowPercent;
3: XlDataLabelsType:=xlDataLabelsShowLabel;
4: XlDataLabelsType:=xlDataLabelsShowLabelAndPercent;
end;
Series.ApplyDataLabels(Type:=XlDataLabelsType);
end;
// Выбор числового формата для отображения значений
procedure TOKBottomDlg8.sNumberFormatChange(Sender: TObject);
begin
DataLabels:=Series.DataLabels;
DataLabels.NumberFormat:=sNumberFormat.Text;
end;
// Горизонтальное выравнивание текста
procedure TOKBottomDlg8.sHorizontalAlignmentChange(Sender: TObject);
begin
case sHorizontalAlignment.Itemlndex of
0: DataLabels.HorizontalAlignment:=xlHAlignCenter;
1: DataLabels.HorizontalAlignment:=xlHAlignLeft;
2: DataLabels.HorizontalAlignment:=xlHAlignRight;
end;
end;
// Вертикальное выравнивание текста
procedure TOKBottomDlg8.sVerticalAlignmentChange(Sender: TObject);
begin
case sHorizontalAlignment.Itemlndex of
0: DataLabels.VerticalAlignment:=xlVAlignBottom;
1: DataLabels.VerticalAlignment:=xlVAlignCenter ;
2: DataLabels.VerticalAlignment:=xlVAlignTop;
end;
end;
// Угол (направление) текста
procedure TOKBottomDlg8.sOrientationChange(Sender: TObject);
begin
DataLabels.Orientation:=sOrientation.Value;
end;



Настраивая эти свойства, можно существенно изменить внешний вид диа-
граммы, а возможность сочетать варианты выбора позволяет представить
информацию пользователю наиболее наглядно (рис. 14.16).

Рис. 14.16. Настройка подписей ряда диаграммы
Интересные возможности предоставляет применение формата, задаваемого
строкой символов и позволяющего задать необходимый вид для числового
значения. Для задания формата чисел можно использовать символы 0, #, ?,
$ и т. д. (их список ограничивается только вашей фантазией и требования-
ми пользователей). Формат чисел, показанных на рис. 14.16, задан следую-
щим оператором:
DataLabels.NumberFormat:='$000,00';



В рамках выбранного типа диаграммы объект Series дает возможность изме-
нять фигуру для точек ряда. Это осуществляется записью определенной
константы в свойство BarShape объекта Series. Следующая процедура позво-
ляет это сделать.
Изменение вида фигуры для точек ряда диаграммы
procedure TOKBottomDlg8.sBarShapeChange(Sender: TObject);
const xlPyramidToPoint=l;
begin
Series.BarShape:= xlPyramidToPoint;
end;



В данном случае мы устанавливаем отображение точки ряда в виде пирами-
ды (рис. 14.17).
Если внимательно рассмотреть диаграммы на рис. 14.16 и 14.17, то мы об-
наружим отклонение стиля второй точки от остальных точек этого ряда. Это
достигается путем изменения свойств выбранной точки данного ряда. Точки
ряда диаграммы объединены в коллекцию Points, свойства и методы кото-
рой обеспечивают доступ к любой точке ряда. Свойство Count этой коллек-
ции содержит количество элементов коллекции, а метод Item(i:integer) воз-
вращает ссылку на элемент коллекции. Чтобы не повторяться, достаточно
отметить, что свойства объекта Point в большей степени идентичны свойст-
вам объекта Series. Программирование свойств этого объекта более детально
представлено в исходном тексте приложения на сопроводительном компакт-
диске книги.
Рассмотрим еще одно свойство объекта Series, являющееся альтернативой
задания области исходных данных для построения диаграммы. Это свойство
имеет строковый тип и содержит формулу, по которой строится ряд диа-
граммы. Свойство Formula принадлежит непосредственно объекту Series.
Следующая процедура иллюстрирует его использование для получения вы-
ражения формулы (рис. 14.18).
Получение строки, содержащей формулу для заданного ряда
procedure TOKBottomDlg8.Buttonl6Click(Sender: TObject);
var eee_:string;
begin
eee_:=Series.Formula;
MessageBox(handle,pchar(eee_) , ' ' , 0 ) ;
end;




Рис. 14.17. Изменение вида фигуры для выбранного ряда

Рис. 14.18. Формула для построения ряда
Используя формулы для объекта Series, можно изменить область исходных
данных для построения ряда.
Следующий оператор изменяет границы области исходных данных построе-
ния для выбранного ряда диаграммы:
Series.FormulaLocal = '=SERIES(,,Лист1!R5C1:R5C7,2)';


Опубликовал Kest October 02 2009 15:29:25 · 0 Комментариев · 6086 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Х. М. Дейтел, П. ...
Фильтры изображений
PHP 5 на примерах
Xrumer 4 Platinum...
FreeSMS v1.3.1
BSButton
IPAddresseEdit
WordReport
Род Стивенс. Delp...
Text effect
BDEPack
Введение в станда...
Matrix2D
Berg
DelTrayIcon [Исхо...
PCX
Microsoft Press -...
Игра PackMan
Векторный редакто...
Info

Топ загрузок
Приложение Клие... 100774
Delphi 7 Enterp... 97838
Converter AMR<-... 20268
GPSS World Stud... 17014
Borland C++Buil... 14192
Borland Delphi ... 10292
Turbo Pascal fo... 7374
Калькулятор [Ис... 5984
Visual Studio 2... 5207
Microsoft SQL S... 3661
Случайные статьи
Зять и тёща
Полудуплексные про...
Приемы расположены...
Постановка задачи ...
8.2. Два квадратич...
к ресурсам в сети ...
Разработать и реал...
Как раскрутить спе...
Табл. 5-3.
Глава 10
Решения к главе 9
ОПЕРАТОРЫ БЛОКОВ
ИЗЯЩНОЕ ВОССТАНОВЛ...
Оператор "нормпред...
Как полнить игрово...
see(X)
Эмуляция классов
5 мифов Web програ...
Оптимизация сайта ...
Ограниченные типы
Инициализация данн...
Туннельный порт ко...
Управление маркерами
Управляющие кодовы...
Измените DACL, что...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?