График

График отображает зависимость Y-составляющих значений набора данных от соответствующих им X-составляющих (как вы помните, каждый набор данных содержит пары значений <x,y>); обычно график выполняет роль фазовой диаграммы. Все добавляемые в набор данных измерения последовательно добавляются на график, по координатным осям откладываются соответствующие значения измерения набора данных, то есть каждому измерению на графике будет соответствовать точка с координатами <x,y>.

График

График может одновременно отображать сразу несколько элементов данных.

Вы можете изменять внешний вид графика, соединяя при необходимости наносимые на график точки линиями, а также выбирать, будет ли линия между двумя соседними значениями получаться путем линейной или ступенчатой интерполяции. 

Данный тип диаграммы может использоваться для множества различных целей. Если, например, X- и Y-значения набора данных хранят соответствующие координаты движущегося объекта, то добавив такой набор данных на график, вы увидите отображена траекторию движения этого объекта.

 Чтобы добавить график

  1. Перетащите элемент График  из палитры Статистика в то место графического редактора, где вы хотите нарисовать график.

Свойства

Основные

Имя – Имя диаграммы. По этому имени диаграмма будет доступна из кода.

Исключить – Если опция выбрана, то диаграмма будет исключена из модели.

Отображается на верхнем уровне – Если опция выбрана, то диаграмма будет видна на презентации типа агента, в который будет вложен данный агент.

Данные

 – С помощью этой кнопки вы можете добавить новый элемент данных на диаграмму. Щелкнув по ней, вы откроете новую секцию свойств, в которой вы должны будете задать свойства нового элемента данных, значения которого вы хотите отображать на диаграмме: 

Заголовок – Заголовок этого набора данных, который будет отображаться в легенде диаграммы. 

Значение по оси X – [Видно, если выше выбрана опция Значение] Выражение, результат вычисления которого будет играть роль x-компоненты добавляемого на график значения.

Значение по оси Y – [Видно, если выше выбрана опция Значение] Выражение, результат вычисления которого будет играть роль y-компоненты добавляемого на график значения.

Набор данных – [Видно, если выше выбрана опция Набор данных] Имя набора данных, хранящего данные, которые вы хотите визуализировать на этом графике.

Стиль маркера – Тип маркера, которым будут отмечаться на графике значения этого набора данных (эти значения могут соединяться линиями согласно выбранному типу интерполяции).

Толщина линии – [Отображается, если установлен флажок Рисовать линию] Толщина линии, соединяющей значения элемента данных на графике.

Цвет – Цвет, которым будет отображаться данный набор данных на диаграмме. Щелкните мышью внутри элемента управления и выберите нужный цвет из списка наиболее часто используемых цветов или же выберите любой другой цвет с помощью диалога Цвета.

Чтобы удалить набор данных с диаграммы, щелкните мышью по кнопке  внизу этой секции свойств. Используйте кнопки и , чтобы изменять порядок расположения элементов данных.

Обновление данных

Обновлять данные автоматически - Если опция выбрана, то диаграмма будет производить обновление значений отображаемых на ней наборов данных с периодичностью, указанной в поле Период. Так же здесь вы можете выбрать, хотите ли вы Использовать модельное время, чтобы задать Время первого обновления, или вы хотите Использовать календарные даты, чтобы задать Дату обновления.

Не обновлять данные автоматически - Если опция выбрана, то диаграмма не будет самостоятельно производить обновление значений отображаемых на ней наборов данных.

Отображать до ... последних значений (для данных типа "Значение") - Максимальное количество последних измерений, которое будет отображаться на графике.
Задаваемое здесь значение не будет применимо к тем элементам данных, у которых выбрана опция Набор данных. У таких элементов данных количество значений будет определяться значением, заданным в аналогичном свойстве Хранить до... соответствующего набора данных.

Масштабирование

Горизонтальная шкала - Здесь вы можете выбрать режим масштабирования горизонтальной шкалы диаграммы. Выберите режим автомасштабирования (Авто), либо же Фиксированный режим, при котором горизонтальная шкала диаграммы будет иметь четко заданные минимум и максимум (задающиеся в полях От и до).

Вертикальная шкала - Здесь вы можете выбрать режим масштабирования вертикальной шкалы диаграммы. Выберите режим автомасштабирования (Авто), либо же Фиксированный режим, при котором вертикальная шкала диаграммы будет иметь четко заданные минимум и максимум (задающиеся в полях От и до).

Внешний вид

Метки по оси X – С помощью данного выпадающего списка вы можете задать расположение меток, отображаемых для оси X, относительно области графика (Снизу или Сверху). Если вы не хотите, чтобы у оси X отображались метки, выберите из списка Нет.

Метки по оси Y – С помощью данного выпадающего списка вы можете задать расположение меток, отображаемых для оси Y, относительно области графика (Слева или Справа). Если вы не хотите, чтобы у оси Y отображались метки, выберите из списка Нет.

Цвет фона – Фоновый цвет диаграммы. 

Цвет границы – Цвет, которым будет отображаться граница диаграммы. 

Цвет меток – Цвет, которым будут отображаться метки по оси Y. Если вы не хотите, чтобы метки были видны, выберите Нет цвета.

Цвет сетки – Цвет, которым будет отображаться сетка графика. Если вы не хотите, чтобы сетка была видна, выберите Нет заливки.

Рисовать линию – Если опция выбрана, то добавленные на график значения элемента данных будут соединяться линиями.

Интерполяция – [Отображается, если установлен флажок Рисовать линию] Задает тип интерполяции графика, т.e. то, какие значения будут отрисовываться для элемента данных на графике между двумя его соседними измеренными значениями. Поддерживается два типа интерполяции:

Линейная – два соседних значения элемента данных будут соединяться прямым отрезком линии. 
Ступенчатая – точки будут соединяться "ступенью" - то есть, двумя отрезками прямых. На всем интервале между двумя соседними значениями y-значение будет везде одно и то же и равно y-значению ранее добавленной точки.

Местоположение и размер

X – X-координата верхнего левого угла диаграммы.

Y – Y-координата верхнего левого угла диаграммы.

Ширина – Ширина диаграммы (в пикселах).

Высота – Высота диаграммы (в пикселах).

Легенда

Легенда – Если опция выбрана, то у данной диаграммы будет отображаться легенда. Вы можете управлять местоположением легенды относительно области диаграммы с помощью группы кнопок Расположение. Размер области, выделенной под легенду, задается с помощью элемента управления Ширина (или Высота, в зависимости от того, какое задано Расположение легенды). Также вы можете изменить Цвет текста легенды.

Область диаграммы

Свойства, расположенные в секции Область диаграммы, задают визуальные свойства области диаграммы:

Смещение по оси X – Смещение области диаграммы по оси X относительно левой границы всей области, выделенной в графическом редакторе под диаграмму.

Смещение по оси Y – Смещение области диаграммы по оси Y относительно верхней границы всей области, выделенной в графическом редакторе под диаграмму.

Ширина – Ширина области диаграммы (в пикселах).

Высота – Высота области диаграммы (в пикселах).

Цвет фона – Фоновый цвет области диаграммы. 

Цвет границы – Цвет, которым будет отображаться граница области диаграммы. 

Специфические

Видимость – Видимость диаграммы.  Диаграмма будет видна, если заданное здесь выражение будет истинно (true), в противном случае диаграмма отображаться не будет.

Количество – Количество экземпляров данной диаграммы. Если вы оставите это поле пустым, то будет создана только одна такая диаграмма.

Действие при удалении элемента – Код, который будет выполняться, когда пользователь удалит с диаграммы какой-то один (или несколько) элемент(ов) данных. Код будет вызываться как в том случае, если пользователь удалит элементы из контекстного меню легенды диаграммы, так и в том случае, если он удалит  их программно путем вызова методов remove() и removeAll().
Вы можете использовать в этом коде две переменные:
int removedIndex - номер только что удаленного элемента данных.
boolean programmatically - определяет, был ли элемент удален программно (true) или нет (false).

Действие при изменении выделения – Код, который будет выполняться, когда пользователь выделит на диаграмме какой-то один (или несколько) элемент(ов) данных. Код будет вызываться как в том случае, если пользователь выделит элементы, щелкнув мышью по их заголовкам в легенде, так и в том случае, если он выделит  их программно путем вызова метода selectItem()
Вы можете использовать в этом коде две переменные:
int[] selectedIndices - номера выделенных в текущий момент элементов данных.
boolean programmatically - определяет, были ли элементы выделены программно (true) или нет (false).

Отображать имя – Если опция выбрана, то имя фигуры будет отображаться в графическом редакторе.

Когда вы закончите создание графика, вам нужно будет последовательно задать те элементы данных, которые вы хотите отображать на данном графике.

 Чтобы добавить элемент данных на график
  1. Выделите график в графическом редакторе или в панели Проекты.
  2. Перейдите в секцию Данные панели Свойства.
  3. Щелкните мышью по кнопке . При этом над кнопкой появится новая секция свойств, задающая настройки нового элемента данных, который будет отображаться на данном графике.
  4. Вначале выберите, что будет являться источником данных, которые вы хотите визуализировать - заданное вами Значение или Набор данных.
  5. Давайте объясним подробнее, в чем разница между этими двумя опциями. Если вы хотите, например, отображать на диаграмме график зависимости одной переменной (или параметра) от другой, то вам нужно будет выбрать опцию Значение и ввести имя одной переменой (значения которой вы хотите откладывать по оси X) в поле Значение по оси X, а имя другой переменной (значения которой вы хотите откладывать по оси Y) - в поле Значение по оси Y. В этих полях можно задавать не только имена переменных или параметров, а любые выражения. Эти выражения будут вычисляться с заданной частотой, и результаты их вычисления будут добавляться на график.
  6. Если же вы хотите отображать на графике данные, собираемые набором данных, то выберите опцию Набор данных и введите имя этого набора данных в расположенном ниже поле Набор данных.
  7. Задайте заголовок для этого элемента данных в поле Заголовок. Введенный здесь текст будет отображаться в легенде графика.
  8. Выберите тип маркера, которым будут отмечаться на графике значения данного элемента данных (эти значения могут соединяться линиями согласно выбранному типу интерполяции), из выпадающего списка Стиль маркера.
  9. Если нужно, измените цвет, которым данный элемент данных будет отображаться на графике с помощью элемента управления Цвет.
  10. Если вы хотите, чтобы значения этого элемента данных соединялись на графике линиями, установите флажок Рисовать линию и задайте дополнительные параметры линии с помощью приведенных ниже элементов управления. Задайте тип интерполяции (Линейная или Ступенчатая) с помощью выпадающего списка Интерполяция. Опционально, измените Толщину линии
 Чтобы удалить элемент данных с графика
  1. Выделите график в графическом редакторе или в панели Проекты.
  2. Перейдите в секцию Данные панели Свойства.
  3. Выделите элемент данных, который вы хотите удалить с данной диаграммы, и щелкните мышью по кнопке  внизу секции Данные.

Функции

Местоположение

Функция

Описание

double getX()

Возвращает координату X диаграммы (а именно, ее левого верхнего угла).

double getY()

Возвращает координату Y диаграммы (а именно, ее левого верхнего угла).

void setX(double x)

Задает координату X диаграммы.

Параметр:
x - новое значение координаты X

void setY(double y)

Задает координату Y диаграммы.

Параметр:
y - новое значение координаты Y

void setPos(double x, double y)

Задает новые координаты диаграммы.

Параметры:
x - новое значение координаты X
y - новое значение координаты Y

Размер

Функция

Описание

double getWidth()

Возвращает ширину диаграммы.

double getHeight()

Возвращает высоту  диаграммы.

void setWidth(double w)

Задает новую ширину диаграммы.

Параметр:
w - новое значение ширины диаграммы

void setHeight(double h)

Задает новую высоту диаграммы.

Параметр:
h - новое значение высоты диаграммы

Видимость

Функция

Описание

boolean isVisible()

Проверяет видимость диаграммы: если диаграмма отображается, то функция возвращает true, если не отображается - то false.

void setVisible(boolean v)

Устанавливает видимость диаграммы.

Параметр:
v - видимость: если true - диаграмма будет видимой,
                            если false - невидимой.

Шкалы значений

Функция

Описание

void setFixedHorizontalScale
(double minimum, double maximum)

Задает фиксированный диапазон значений для горизонтальной оси (оси X) диаграммы.

Параметры:
minimum - минимальное значение по оси X
maximum - максимальное значение по оси X

void setFixedVerticalScale
(double minimum, double maximum)

Задает фиксированный диапазон значений для вертикальной оси (оси Y) диаграммы.

Параметры:
minimum - минимальное значение по оси Y
maximum - максимальное значение по оси Y

Добавление и удаление элементов данных диаграммы

Функция

Описание

void addDataSet(DataSet ds)

Добавляет на диаграмму набор данных с заголовком "Data set" и заданным по умолчанию стилем отображения с помощью линии голубого цвета толщиной 1, соединяющей точки значений согласно линейной интерполяции (маркеры самих точек не рисуются).

Параметр:
ds - набор данных для добавления

void addDataSet
(DataSet ds,
String title)

Добавляет на диаграмму набор данных с заданным заголовком. На графике отображается линия голубого цвета толщиной 1, соединяющая точки значений согласно линейной интерполяции (маркеры самих точек не рисуются).

Параметры:
ds - набор данных для добавления
title - заголовок набора данных

void addDataSet
(DataSet ds,
String title,
Chart2DPlot.Appearance appearance)

Добавляет на диаграмму набор данных с заданным заголовком и стилем отображения.

Параметры:
ds - набор данных для добавления
title - заголовок набора данных
appearance - стиль отображения элемента данных на графике

void addDataSet(DataSet ds,
String title,
Color color,
boolean drawLine, Chart.InterpolationType interpolationType,
float lineWidth, Chart.PointStyle pointStyle)

Добавляет на диаграмму набор данных с заданным заголовком и стилем отображения.

Параметры:
ds - набор данных для добавления
title - заголовок набора данных
color - цвет элемента данных на графике
drawLine - если true, то значения будут соединяться линией, если false, то нет
interpolationType - тип интерполяции, согласно которому будут соединяться точки значений:
INTERPOLATION_LINEAR
- линейная интерполяция; 
INTERPOLATION_STEP
- ступенчатая.
lineWidth -толщина линии (при значении 0 рисуется линий наименьшей возможной толщины)
pointStyle - тип маркера для точек значений:
POINT_NONE - нет маркеров; 
POINT_SQUARE
- квадраты; 
POINT_CIRCLE
- круги; 
POINT_TRIANGLE
- треугольники.

int getCount()

Возвращает количество элементов данных, отображаемых этой диаграммой.

ChartItem get(int i)

Возвращает элемент диаграммы (DataItem, DataSet, и т.д.) с заданным индексом.

Параметр:
i - индекс элемента данных

String getTitle(int i)

Возвращает заголовок элемента данных с заданным индексом i.

Chart2DPlot.Appearance getAppearance(int i)

Возвращает стиль отображения элемента данных с заданным индексом i.

void remove(int i)

Удаляет элемент с заданным индексом i с диаграммы.

int remove(ChartItem ci)

Удаляет заданный элемент  (DataItem, DataSet) с диаграммы.

Параметр:
ci - набор данных для удаления

void removeAll()

Удаляет все элементы с диаграммы.

Выделение элементов данных

Функция

Описание

void selectItem(int itemIndex, boolean selected)

Выделяет/снимает выделение (это зависит от значения параметра  selected) с элемента диаграммы с заданным индексом.

Параметры:
itemIndex - индекс элемента диаграммы
selected - если true, то выделяет элемент, если false, то снимает выделение

void setSelectedItemIndices(int[] selectedIndices)

Выделяет элементы диаграммы с заданными индексами. Если ранее были выделены какие-то другие элементы, то это выделение будет снято.

Параметр:
selectedIndices - массив индексов элементов диаграмм, которые будут выделены, может быть равен null - тогда выделение будет снято со всех элементов

int[] getSelectedItemIndices()

Возвращает количество элементов диаграммы, выделенных на диаграмме.

Ручное обновление данных диаграммы

Функция

Описание

void updateData()

Обновляет все элементы данных, отображаемые на этой диаграмме. 

Копирование данных диаграммы в буфер обмена

Функция

Описание

String copyToClipboard()

Копирует все данные диаграммы в системный буфер обмена. 

Функция возвращает текстовое представление всех данных диаграммы.


См. также

 Режимы масштабирования диаграмм

 Масштабирование временных диаграмм

 Область диаграммы

 Легенда диаграммы

 Сетка и метки диаграммы

 Обновление диаграмм

 Динамическое изменение внешнего вида диаграммы

 Справочник классов: Класс Plot