Пакет: slreportgen.report
Переменный генератор отчетов модели
Генератор отчетов для переменной модели Simulink®.
Примечание
Использовать slreportgen.report.ModelVariable
генератор отчетов в отчете, необходимо создать отчет с помощью slreportgen.report.Report
класс или подкласс.
slreportgen.report.ModelVariable
классом является handle
класс.
HandleCompatible | true |
Для получения информации об атрибутах класса см. Атрибуты класса.
Вы не создаете slreportgen.report.ModelVariable
возразите явным образом. Получить slreportgen.report.ModelVariable
объект для найденной переменной модели:
Используйте find
или next
метод slreportgen.finder.ModelVariableFinder
объект получить slreportgen.finder.ModelVariableResult
объект для найденной переменной.
Вызовите getReporter
метод slreportgen.finder.ModelVariableResult
объект получить slreportgen.report.ModelVariable
объект.
Можно настроить создание отчетов переменной модели путем установки свойств slreportgen.report.ModelVariable
объект.
Variable
— Simulink.VariableUsage
объектSimulink.VariableUsage
Simulink.VariableUsage
объект, который соответствует переменной, чтобы сообщить относительно. Объект содержит имя переменной, источник переменной и блоки, которые используют переменную. Это свойство доступно только для чтения.
ModelBlockPath
— Путь блока Model, который устанавливает значение переменной[]
| вектор символовПуть блока Model, который устанавливает значение переменных в виде вектора символов.
Предположим, что модель, на которую ссылаются, использует аргумент модели, чтобы установить значение параметров блоков. Если модель имеет несколько экземпляров модели, на которую ссылаются, переменное средство поиска модели возвращает несколько экземпляров переменной, которая сопоставлена с аргументом модели. ModelBlockPath
свойство однозначно определяет экземпляр переменной путем обеспечения пути к блоку модели, которые устанавливают его значение. Если переменная не сопоставлена с аргументом модели в модели, на которую ссылаются, ModelBockPath
isempty. Для получения дополнительной информации о моделях, на которые ссылаются, и специфичных для экземпляра параметрах, смотрите, Параметрируют Экземпляры Допускающей повторное использование Модели, на которую Ссылаются.
ShowUsedBy
— Включать ли блоки, которые используют эту переменнуюtrue
(значение по умолчанию) | false
Включать ли список блоков, которые используют эту переменную в виде true
или false
. Если FormatPolicy
свойство имеет значение "Inline Text"
, список блоков не включен в отчет, независимо от значения ShowUsedBy
свойство.
Если отчет включает в себя содержимое, о котором сообщают, для блока в Используемом списком, отмечание гиперссылки для блока берет вас к содержимому. Смотрите Генерируют Отчет Переменных Модели, Схемы и Блоки.
ShowWorkspaceInfo
— Включать ли рабочую область true
(значение по умолчанию) | false
Включать ли рабочую область, что переменная разрешена в в виде true
или false
. Если FormatPolicy
свойство имеет значение "Inline Text"
, рабочая область не включена в отчет, независимо от значения ShowWorkspaceInfo
свойство.
ListFormatter
— Перечислите средство форматированияmlreportgen.dom.UnorderedList
(значение по умолчанию) | mlreportgen.dom.OrderedList
Перечислите средство форматирования, которое форматирует список блоков, которые используют переменную в виде mlreportgen.dom.UnorderedList
возразите или mlreportgen.dom.OrderedList
объект. Чтобы настроить, как список отформатирован, измените свойства объекта списка или замените объект списка на индивидуально настраиваемый объект списка, который не содержит элементы списка.
FormatPolicy
— Формат значений переменных"Auto"
(значение по умолчанию) | "Table"
| "Paragraph"
| "Inline Text"
Формат значений переменных в виде одной из этих строк или векторов символов:
"Auto"
— Форматирует значения переменных как таблицу или абзац, в зависимости от типа данных значения.
Типы данных, отформатированные как таблица, включают:
CellArray
Логический массив
Числовой массив
Таблица MATLAB®
Объект Simulink
Объект Stateflow®
Графический объект
Структура MATLAB или массив структур
Объект MATLAB или объектный массив
Типы данных, отформатированные как абзац, включают:
Вектор ячейки
Логический скаляр или вектор
Числовой скаляр или вектор
Символ или символьный массив
Строка
Вектор структуры MATLAB
Вектор объекта MATLAB
"Table"
— Форматирует значения переменных в таблице. Переменные, которые по умолчанию появляются как абзацы, отформатированы вместо этого как записи таблицы. Переменные, которые иерархически структурированы объекты, такие как MATLAB структуры, объекты MATLAB, объекты Simulink, объекты Stateflow или графические объекты, могут иметь свойства, которые являются самостоятельно объектами. В этом случае иерархия сглажена, и значение свойства отображено как гиперссылка на таблицу свойств того объекта. Таблица свойства объекта также имеет гиперссылку назад на исходную таблицу.
"Paragraph"
— Отформатируйте значения переменных как абзац. Переменные, которые по умолчанию отформатированы как таблицы, сглажены и отформатированы как абзац.
"Inline Text"
— Форматирует переменную в соответствии с сопроводительным текстом.
TableReporter
— Табличный генератор отчетов mlreportgen.report.Basetable
Табличный генератор отчетов раньше форматировал значение переменной в виде mlreportgen.report.BaseTable
объект. Чтобы настроить внешний вид таблицы, измените свойства табличного генератора отчетов по умолчанию или замените его на индивидуально настраиваемый табличный генератор отчетов. Если вы добавляете содержимое в Title
свойство значения по умолчанию или настроенного табличного генератора отчетов, содержимое появляется перед табличным заголовком в сгенерированном отчете.
ParagraphFormatter
— Средство форматирования абзацаmlreportgen.dom.Paragraph
объектСредство форматирования абзаца, чтобы отформатировать значение переменной модели в виде mlreportgen.dom.Paragraph
объект. Чтобы настроить внешний вид абзаца, измените свойства mlreportgen.dom.Paragraph
возразите или замените объект на индивидуально настраиваемый mlreportgen.dom.Paragraph
объект. Если вы добавляете содержимое в значение по умолчанию или заменяющий объект абзаца, содержимое появляется перед переменным содержимым в сгенерированном отчете.
TextFormatter
— Текстовое средство форматированияmlreportgen.dom.Text
объектТекстовое средство форматирования, чтобы отформатировать имя и значение переменной модели, когда текст соответствует сопроводительному тексту в виде mlreportgen.dom.Text
объект. Чтобы настроить внешний вид текста, измените свойства mlreportgen.dom.Text
по умолчанию возразите или замените объект на индивидуально настраиваемый
mlreportgen.dom.Text
объект. Если вы добавляете содержимое в объект или текста замены по умолчанию, содержимое появляется перед переменным содержимым в сгенерированном отчете.
MaxCols
— Максимальное количество столбцов таблицы, чтобы отобразитьсяМаксимальное количество столбцов таблицы, чтобы отобразиться в виде положительного целого числа. Поскольку переменные типа массив сообщили об использовании таблицы, если количество столбцов больше значения MaxCols
свойство, таблица нарезана вертикально. Разрезание делит таблицу на несколько таблиц.
DepthLimit
— Максимальное количество вложенных уровней, чтобы сообщитьМаксимальное количество уровней, чтобы сообщить для переменной, которая является структурированным объектом или массивом структурированных объектов в виде неотрицательного целого числа. Уровни, меньше чем или равные значению DepthLimit
сглажены в последовательность связанных таблиц (см. FormatPolicy
свойство. Об уровнях, больше, чем предел глубины, не сообщают. Если вы устанавливаете DepthLimit
свойство к 0, структурированные объекты не расширены.
ObjectLimit
— Максимальное количество вложенных объектов, чтобы сообщитьМаксимальное количество объектов в иерархии объектов, чтобы сообщить в виде положительного целого числа.
IncludeTitle
— Включать ли заголовокtrue
(значение по умолчанию) | false
Включать ли заголовок в виде true
или false
. Заголовок содержит имя переменной и опционально, тип данных. Если IncludeTitle
true
, заголовок включен. По умолчанию заголовок включает только имя переменной. Чтобы включать тип данных переменной, установите ShowDataType
свойство к true
.
Title
— Заголовок переменной, чтобы сообщить[]
(значение по умолчанию) | вектор символов | строковый скаляр | mlreportgen.dom.Text
возразите | mlreportgen.dom.InternalLink
возразите | mlreportgen.dom.ExternalLink
объектЗаголовок переменной, чтобы сообщить в виде вектора символов, строкового скаляра, mlreportgen.dom.Text
объект, mlreportgen.dom.InternalLink
объект или mlreportgen.dom.ExternalLink
объект.
Если FormatPolicy
свойство установлено в "Inline Text"
и Title
свойство установлено в:
Проигнорирован Объект DOM, форматирование, заданное Объектом DOM
mlreportgen.dom.InternalLink
или mlreportgen.dom.ExternalLink
объект, текст ссылки используется для заголовка, но заголовок не является ссылкой
В обоих случаях, чтобы отформатировать заголовок, используйте TextFormatter
свойство этого ModelVariable
генератор отчетов.
Если вы не задаете Title
свойство, заголовок является именем переменной.
ShowDataType
— Показать ли тип данных переменной в заголовкеfalse
(значение по умолчанию) | true
Показать ли тип данных переменной в заголовке в виде true
или false
.
ShowEmptyValues
— Показать ли свойства, которые имеют пустые значенияtrue
(значение по умолчанию) | false
Показать ли свойства, которые имеют пустые значения в виде true
или false
. ShowEmptyValues
свойство применяется только к объекту MATLAB, объекту Simulink и переменным объекта Stateflow.
ShowDefaultValues
— Показать ли свойствам то использование значения по умолчаниюtrue
(значение по умолчанию) | 0
Показать ли свойства, которые используют значение по умолчанию в виде true
или false
. ShowDefaultValues
свойство применяется только к объекту MATLAB, объекту Simulink и переменным объекта Stateflow.
PropertyFilterFcn
— Функция или выражение к свойствам фильтра переменной модели, о которой сообщают,[]
(значение по умолчанию) | указатель на функцию | строковый скаляр | вектор символовФункция или выражение, чтобы отфильтровать свойства переменной модели, о которой сообщают, из отчета. Задайте функцию как указатель на функцию. Задайте выражение как строковый скаляр или вектор символов. Это свойство применяется только к переменной, которая содержит объект. Если вы не обеспечиваете PropertyFilterFcn
, все свойства переменной модели включены в отчет.
Если вы обеспечиваете указатель на функцию, присоединенная функция должна:
Возьмите эти аргументы:
variableName
— Об имени переменной сообщают
variableObject
— О переменной сообщают
propertyName
— Имя свойства переменной, о которой сообщают
Возвратите true
отфильтровать заданное свойство из отчета или false
включать свойство в отчет.
Например, этот код предотвращает отображение Description
и Complexity
свойства Simulink.Parameter
объект.
import slreportgen.finder.* import slreportgen.report.* rpt = slreportgen.report.Report('modelvarrpt','pdf'); model_name = load_system('sldemo_mdlref_datamngt'); finder = slreportgen.finder.ModelVariableFinder(model_name); while hasNext(finder) result = next(finder); varRptr = getReporter(result); varRptr.PropertyFilterFcn = @varPropertyFilter; add(rpt,varRptr); end close(rpt); close_system(model_name); rptview(rpt); function tf = varPropertyFilter(~, variableObject,propertyName) if isa(variableObject, 'Simulink.Parameter') tf = (propertyName == "Description") || ... (propertyName == "Complexity"); else tf = false; end end
Если вы обеспечиваете строковый скаляр или вектор символов, это должно содержать выражение. Выражение:
Может использовать переменные variableName
, variableObject
, и propertyName
Должен установить переменную isFiltered
к true
отфильтровать заданное свойство из отчета или false
включать свойство в отчет
Например, этот код фильтрует CoderInfo
свойство Simulink.Parameter
объект из отчета.
import slreportgen.finder.* import slreportgen.report.* rpt = slreportgen.report.Report('modelvarrpt','pdf'); model_name = load_system('sldemo_mdlref_datamngt'); finder = slreportgen.finder.ModelVariableFinder(model_name); while hasNext(finder) result = next(finder); varRptr = getReporter(result); varRptr.PropertyFilterFcn = "isFiltered = " + ... "isa(variableObject, 'Simulink.Parameter') && " + ... "propertyName == 'CoderInfo';"; add(rpt,varRptr); end close(rpt); close_system(model_name); rptview(rpt);
NumericFormat
— Формат или точность раньше отображали числовые значения нецелого числа"%.2f"
(значение по умолчанию) | строковый скаляр | вектор символов | положительное целое числоФормат или точность раньше отображали числовые значения нецелого числа.
Задайте формат как строковый скаляр или вектор символов. Смотрите formatSpec
аргумент на sprintf
страница с описанием.
Задайте точность как положительное целое число. Смотрите precision
аргумент на num2str
страница с описанием.
Пример: "%.2f"
отображения удваивают значения с двумя цифрами справа от десятичного разряда.
Пример 2 отображает максимальное количество двух значительных цифр.
TemplateSrc
— Источник шаблона для этого генератора отчетов[]
(значение по умолчанию) | вектор символов | строковый скаляр | генератор отчетов или отчет | документ DOM или часть документаИсточник шаблона для этого генератора отчетов, заданного одним из этих способов:
Вектор символов или строковый скаляр, который задает путь файла, который содержит шаблон для этого генератора отчетов
Генератор отчетов или отчет, шаблон которого используется для этого генератора отчетов или чья библиотека шаблонов содержит шаблон для этого генератора отчетов
Документ DOM или часть документа, шаблон которой используется для этого генератора отчетов или чья библиотека шаблонов содержит шаблон для этого генератора отчетов
Заданный шаблон должен быть тем же типом как отчет, к которому добавлен этот генератор отчетов. Например, для отчета Word Microsoft®, TemplateSrc
должен быть шаблон генератора отчетов Word. Если TemplateSrc
свойство пусто, этот генератор отчетов использует шаблон генератора отчетов по умолчанию для выходного типа отчета.
TemplateName
— Имя шаблона для этого генератора отчетовИмя шаблона для этого генератора отчетов в виде вектора символов или строкового скаляра. Шаблон для этого генератора отчетов должен быть в библиотеке шаблонов источника шаблона (TemplateSrc
) для этого генератора отчетов.
LinkTarget
— Цель гиперссылки для этого генератора отчетов[]
(значение по умолчанию) | вектор символов | строковый скаляр | mlreportgen.dom.LinkTarget
объектЦель гиперссылки для этого генератора отчетов в виде вектора символов или строкового скаляра, который задает ID цели ссылки или mlreportgen.dom.LinkTarget
объект. Значение вектора символов или строкового скаляра преобразовано в LinkTarget
объект. Цель ссылки сразу предшествует содержимому этого генератора отчетов в выходном отчете.
getVariableName | Получите имя переменной из переменного генератора отчетов модели |
getVariableValue | Получите значение переменной из переменного генератора отчетов модели |
slreportgen.report.ModelVariable.createTemplate | Создайте переменный шаблон генератора отчетов модели |
slreportgen.report.ModelVariable.customizeReporter | Создайте пользовательский переменный класс генератора отчетов модели |
slreportgen.report.ModelVariable.getClassFolder | Получите местоположение переменного файла определения класса генератора отчетов модели |
copy | Создайте копию генератора отчетов, возражают и делают глубокие копии значений свойств, которые ссылаются на генератор отчетов, ReporterLayout или Объект DOM |
getImpl | Получите реализацию генератора отчетов |
Используйте свойства slreportgen.report.ModelVariable
объект настроить форматирование переменной.
% Create a Report rpt = slreportgen.report.Report("MyReport","pdf"); % Create a Chapter chapter = mlreportgen.report.Chapter(); chapter.Title = "Model Variable Reporter Example"; % Load the model model_name = "sf_car"; load_system(model_name); % Find the variables in the model finder = slreportgen.finder.ModelVariableFinder(model_name); while hasNext(finder) result = next(finder); % Get the ModelVariable reporter for the result % Customize the formatting of numbers reporter = getReporter(result); reporter.NumericFormat = "%.4f"; % Add the reporter to the chapter add(chapter,reporter); end % Add chapter to the report add(rpt,chapter); % Close the report and open the viewer close(rpt); rptview(rpt);
Сгенерируйте отчет, который включает:
Глава для переменных модели
Глава для каждой диаграммы модели, с разделом для блоков в схеме
Каждое имя блока в Используемом списком для переменной модели является гиперссылкой на соответствующее содержимое, о котором сообщают для блока.
% Create a Report rpt = slreportgen.report.Report("MyReport","pdf"); % Load the model model_name = "sf_car"; load_system(model_name); % Create a Chapter for the Variables chapter = mlreportgen.report.Chapter(); chapter.Title = sprintf("Model Variable Report for the %s model",model_name); % Find the variables in the model finder = slreportgen.finder.ModelVariableFinder(model_name); % Report on the variables while hasNext(finder) result = next(finder); reporter = getReporter(result); add(chapter,reporter); end add(rpt,chapter); % Add diagrams to the report finder = slreportgen.finder.DiagramFinder(model_name); while hasNext(finder) result = next(finder); ch = mlreportgen.report.Chapter(result.Name); add(ch, result); % Add a section for the blocks in the diagram sect = mlreportgen.report.Section("Title","Blocks"); blFinder = slreportgen.finder.BlockFinder(result.Object); while hasNext(blFinder) blockresult = next(blFinder); add(sect,blockresult); end add(ch,sect); add(rpt, ch); end % Close and view the report close(rpt); rptview(rpt);
Simulink.VariableUsage
| slreportgen.finder.ModelVariableFinder
| slreportgen.finder.ModelVariableResult
| slreportgen.report.BusObject
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.