mlreportgen.report.MATLABVariable class

Пакет: mlreportgen.report

Генератор отчетов переменной MATLAB

Описание

Создайте генератор отчетов, который сообщает относительно переменной MATLAB®.

Конструкция

rptr = mlreportgen.report.MATLABVariable() создает генератор отчетов переменной MATLAB на основе шаблона по умолчанию. Прежде, чем добавить этот генератор отчетов в отчет, используйте его свойства задать имя переменной, относительно которого можно сообщить.

rptr = mlreportgen.report.MATLABVariable(variable) создает генератор отчетов переменной MATLAB для заданного MATLAB variable. Чтобы задать локальную переменную, задайте ее имя, например, MATLABVariable(x). Чтобы задать переменную рабочего пространства MATLAB, задайте ее имя как строку или символьный массив, например, MATLABVariable('x'). Чтобы задать другие опции отчета, используйте свойства этого генератора отчетов.

rptr = mlreportgen.report.MATLABVariable(Name,Value) создает генератор отчетов переменной MATLAB с опциями, заданными одним или несколькими Name,Value парные аргументы. Name имя свойства и Value соответствующее значение. Name должен казаться внутри одним ('') или дважды ("") кавычки. Можно задать несколько аргументов пары "имя-значение" в любом порядке как Name1,Value1,...,NameN,ValueN.

Вместо того, чтобы задать переменную MATLAB с помощью ее NameЗначение пара, можно задать его с помощью только ее значение, но это должен быть первый входной параметр. Например, для глобальной переменной MATLAB под названием x, можно использовать любой mlreportgen.report.MATLABVariable(x,"Location","Global") или mlreportgen.report.MATLABVariable("Variable","x","Location","Global").

Входные параметры

развернуть все

Имя переменной MATLAB в виде строкового скаляра, вектора символов или имени локальной переменной. Чтобы задать локальную переменную, задайте ее имя, например, MATLABVariable(x). Чтобы задать переменную рабочего пространства MATLAB, задайте ее имя как строковый скаляр или вектор символов, например, MATLABVariable('x'). Для получения дополнительной информации о входе смотрите свойство Variable.

Свойства

развернуть все

Имя переменной MATLAB в виде строкового скаляра или вектора символов. Заданная переменная может быть любым из этих типов данных:

  • Символ или символьный массив

  • Строка

  • Векторный массив ячейки или массив ячеек

  • Логический скаляр, логический вектор или логический массив

  • Числовой скаляр, числовой массив или числовой вектор

  • Таблица MATLAB

  • Вектор объекта MATLAB или объектный массив

  • Объект Simulink®

  • Stateflow®object

  • Графический объект

  • Структура MATLAB, вектор структуры или массив структур

Местоположение переменной в виде одной из этих строк или как символьные массивы:

  • "MATLAB" — Базовое рабочее пространство

  • "MAT-File" — MAT-файл задан в FileName свойство этого генератора отчетов

  • "Global" — Глобальное пространство имен

  • "Local" — Локальное пространство имен, обычно пространство имен функциональной или рабочей области, в которой был создан этот генератор отчетов

  • "Model" — Рабочая область модели Simulink Report Generator™ задана в FileName свойство этого генератора отчетов

Имя модели MAT-файл или Simulink, которая содержит переменную в виде строкового скаляра или как вектор символов. Это свойство применяется только если Location значением свойства является MAT-File или Model. Если Location MAT-File, имя файла является именем MAT-файла, из которого можно получить переменную. Если Location Model, FileName имя файла модели Simulink, который содержит переменную.

Формат значений переменных в виде одной из этих строк или векторов символов:

  • "Auto" — Форматирует значения переменных как таблицу или абзац, в зависимости от типа данных значения.

    Типы данных, отформатированные как таблица, включают:

    • CellArray

    • Логический массив

    • Числовой массив

    • Таблица MATLAB

    • Объект Simulink

    • Объект Stateflow

    • Графический объект

    • Структура MATLAB или массив структур

    • Объект MATLAB или объектный массив

    Типы данных, отформатированные как абзац, включают:

    • Вектор ячейки

    • Логический скаляр или вектор

    • Числовой скаляр или вектор

    • Символ или символьный массив

    • Строка

    • Вектор структуры MATLAB

    • Вектор объекта MATLAB

  • "Table" — Форматирует значения переменных в таблице. Переменные, которые по умолчанию появляются как абзацы, отформатированы вместо этого как записи таблицы. Переменные, которые иерархически структурированы объекты, такие как MATLAB структуры, объекты MATLAB, объекты Simulink, объекты Stateflow или графические объекты, могут иметь свойства, которые являются самостоятельно объектами. В этом случае иерархия сглажена, и значение свойства отображено как гиперссылка на таблицу свойств того объекта. Таблица свойства объекта также имеет гиперссылку назад на исходную таблицу.

  • "Paragraph" — Отформатируйте значения переменных как абзац. Переменные, которые по умолчанию отформатированы как таблицы, сглажены и отформатированы как абзац.

  • "Inline Text" — Форматирует переменную в соответствии с сопроводительным текстом.

Табличный генератор отчетов используется этим MATLABVariable генератор отчетов, чтобы отформатировать значения переменных в виде mlreportgen.report.BaseTable объект. Чтобы настроить внешний вид таблицы, измените BaseTable по умолчанию свойства генератора отчетов или замена это с индивидуально настраиваемым BaseTable генератор отчетов. Если вы добавляете содержимое в Title свойство значения по умолчанию или настроенного генератора отчетов, то содержимое появляется перед табличным заголовком в сгенерированном отчете.

Средство форматирования абзаца возражает, чтобы отформатировать значение переменной MATLAB в виде mlreportgen.dom.Paragraph объект. Чтобы настроить внешний вид абзаца, измените Paragraph DOM свойства объектов или замена объект с индивидуально настраиваемым Paragraph объект. Если вы добавляете содержимое в значение по умолчанию или заменяющий объект абзаца, то содержимое появляется перед переменным содержимым в сгенерированном отчете.

Текстовое средство форматирования возражает, чтобы отформатировать текстовые значения переменной MATLAB в таблицах или абзацах в виде mlreportgen.dom.Text объект. Чтобы настроить внешний вид текста, измените Text DOM свойства объектов или замена объект с индивидуально настраиваемым Text объект. Если вы добавляете содержимое в объект или текста замены по умолчанию, то содержимое появляется перед переменным содержимым в сгенерированном отчете.

Максимальное количество столбцов таблицы, чтобы отобразиться в виде положительного целого числа. Поскольку переменные типа массив сообщили об использовании таблицы, если количество столбцов больше значения MaxCols свойство, таблица нарезана вертикально. Разрезание делит таблицу на несколько таблиц.

Максимальное количество уровней, чтобы сообщить для переменной, которая является структурированным объектом или массивом структурированных объектов в виде неотрицательного целого числа. Уровни, меньше чем или равные значению DepthLimit сглажены в последовательность связанных таблиц (см. FormatPolicy свойство. Об уровнях, больше, чем предел глубины, не сообщают. Если вы устанавливаете DepthLimit свойство к 0, структурированные объекты не расширены.

Максимальное количество объектов в иерархии объектов, чтобы сообщить в виде положительного целого числа.

Включать ли заголовок в виде true или false. Заголовок содержит имя переменной и опционально, тип данных. Если IncludeTitle true, заголовок включен. По умолчанию заголовок включает только имя переменной. Чтобы включать тип данных переменной, установите ShowDataType свойство к true.

Показать ли тип данных переменной в заголовке в виде true или false.

Показать ли свойства, которые имеют пустые значения в виде true или false. ShowEmptyValues свойство применяется только к объекту MATLAB, объекту Simulink и переменным объекта Stateflow.

Показать ли свойства, которые используют значение по умолчанию в виде true или false. ShowDefaultValues свойство применяется только к объекту MATLAB, объекту Simulink и переменным объекта Stateflow.

Функция или выражение, чтобы отфильтровать свойства переменной из отчета. Задайте функцию как указатель на функцию. Задайте выражение как строковый скаляр или вектор символов. Это свойство применяется только к переменным, которые содержат объекты. Если вы не обеспечиваете PropertyFilterFcn, все свойства переменной включены в отчет.

Если вы обеспечиваете указатель на функцию, присоединенная функция должна:

  • Возьмите эти аргументы:

    • variableName — Об имени переменной сообщают

    • variableObject — О переменной сообщают

    • propertyName — Имя свойства переменной, о которой сообщают

  • Возвратите true отфильтровать заданное свойство из отчета или false включать свойство в отчет.

Например, этот код предотвращает отображение NumRegions и NumHolesсвойства polyshape объект.

import mlreportgen.report.*

rpt = mlreportgen.report.Report('variablerpt','pdf');
open(rpt);

pgon = polyshape([0 0 2 2],[2 0 0 2]);
mlVar = mlreportgen.report.MATLABVariable(pgon);
mlVar.PropertyFilterFcn = @varPropertyFilter;
add(rpt,mlVar);

close(rpt);
rptview(rpt);

function tf = varPropertyFilter(~,variableObject,propertyName)
if isa(variableObject, "polyshape")
    tf = (propertyName == "NumRegions") ||  ...
        (propertyName == "NumHoles");
    
end
end

Если вы обеспечиваете строковый скаляр или вектор символов, это должно содержать выражение. Выражение:

  • Может использовать переменные variableName, variableObject, и propertyName

  • Должен установить переменную isFiltered к true отфильтровать заданное свойство из отчета или false включать свойство в отчет

Например, этот код фильтрует NumHoles свойство polyshape объект из отчета.

import mlreportgen.report.*

rpt = mlreportgen.report.Report('variablerpt','pdf');
open(rpt);


pgon = polyshape([0 0 2 2],[2 0 0 2]);
mlVar = mlreportgen.report.MATLABVariable(pgon);
mlVar.PropertyFilterFcn = "isFiltered = " + ...
            "isa(variableObject, 'polyshape') && " + ...
            "propertyName == 'NumHoles';";
add(rpt,mlVar);

close(rpt);
rptview(rpt);

Формат или точность раньше отображали числовые значения нецелого числа.

Задайте формат как строковый скаляр или вектор символов. Смотрите formatSpec аргумент на sprintf страница с описанием.

Задайте точность как положительное целое число. Смотрите precision аргумент на num2str страница с описанием.

Пример: "%.2f" отображения удваивают значения с двумя цифрами справа от десятичного разряда.

Пример 2 отображает максимальное количество двух значительных цифр.

Источник шаблона для этого генератора отчетов, заданного одним из этих способов:

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

  • Генератор отчетов или отчет, шаблон которого используется в этом генераторе отчетов или чья библиотека шаблонов содержит шаблон для этого генератора отчетов

  • Документ DOM или часть документа, шаблон которой используется в этом генераторе отчетов или чья библиотека шаблонов содержит шаблон для этого генератора отчетов

Заданный шаблон должен быть тем же типом как отчет, к которому добавлен этот генератор отчетов. Например, для отчета Word Microsoft®, TemplateSrc должен быть шаблон генератора отчетов Word. Если TemplateSrc свойство пусто, этот генератор отчетов использует шаблон генератора отчетов по умолчанию в выходном типе отчета.

Имя шаблона для этого генератора отчетов в виде вектора символов или строкового скаляра. Шаблон для этого генератора отчетов находится в библиотеке шаблонов источника шаблона (TemplateSrc) для этого генератора отчетов.

Цель гиперссылки для этого генератора отчетов в виде вектора символов или строкового скаляра, который задает ID цели ссылки или mlreportgen.dom.LinkTarget объект. Значение вектора символов или строкового скаляра преобразовано в LinkTarget объект. Объект цели ссылки сразу предшествует содержимому этого генератора отчетов в выходном отчете.

Методы

createTemplateСоздайте шаблон переменной MATLAB
customizeReporter Создайте пользовательский класс генератора отчетов переменной MATLAB
getClassFolder Расположение файла определения класса переменной MATLAB
getVariableValue Получите значение переменной MATLAB

Унаследованные методы

customizeReporterСоздайте класс, выведенный из класса Генератора отчетов
getImpl Получите реализацию генератора отчетов

Копировать семантику

Указатель. Чтобы изучить, как классы Handle влияют на операции копии, смотрите Копирование Объектов (MATLAB).

Примеры

Переменные отчета Используя прямые имена или строки

В этом примере показано, как сообщить относительно переменных MATLAB. Локальная переменная использует только свое имя, как введено к MATLABVariable класс и переменная рабочей области используют строку. Первая часть использования в качестве примера настройки свойства по умолчанию и вторая часть изменяет отображение в таблицу.

Примечание

Прежде чем вы запустите этот пример, создадите эту переменную в основном рабочем пространстве MATLAB:

workspace_var = ['Workspace variable input ',...
   'specified as a string'];

rpt = mlreportgen.report.Report("MyReport","pdf");

local_var = ['Local variable input specified ',...
   'using its variable name'];

chapter = mlreportgen.report.Chapter();
chapter.Title = "MATLAB Variable Reporter Example";

% Format using default paragraphs
rptr_local1 = mlreportgen.report.MATLABVariable...
   (local_var);
rptr_workspace1 = mlreportgen.report.MATLABVariable...
   ("workspace_var");

add(chapter,rptr_local1)
add(chapter,rptr_workspace1)

% Format as a table
rptr_local2 = mlreportgen.report.MATLABVariable...
   (local_var);
rptr_workspace2 = mlreportgen.report.MATLABVariable...
   ("workspace_var");
rptr_local2.FormatPolicy = 'Table';
rptr_workspace2.FormatPolicy = 'Table';

add(chapter,rptr_local2)
add(chapter,rptr_workspace2)
add(rpt,chapter)
 
close(rpt)
rptview(rpt)

Введенный в R2018b