主要内容

slreportgen.report.ModelVariable类

包:slreportgen.report
超类:slreportgen.report.reporter.reporter.

模型变量的记者

描述

Simulink的记者金宝app®模型变量。

请注意

使用一个slreportgen.report.ModelVariable报表中,必须使用slreportgen.report.Report类或子类。

slreportgen.report.ModelVariable班级是A.处理类。

类属性

HandleCompatible
真正的

有关类属性的信息,请参见类属性

创建

描述

你不需要创建一个slreportgen.report.ModelVariable对象明确。得到slreportgen.report.ModelVariable发现模型变量的对象:

  • 使用找到下一个的方法slreportgen.finder.ModelVariableFinder对象来获取slreportgen.finder.ModelVariableResult对象查找的变量。

  • 调用getReporter的方法slreportgen.finder.ModelVariableResult对象来获取slreportgen.report.ModelVariable对象。

属性的属性可以自定义模型变量的报告slreportgen.report.ModelVariable对象。

属性

全部展开

金宝app仿真软件。多变的Usage对应于要报告变量的对象。该对象包含变量的名称,变量的源,以及使用变量的块。此属性是只读的。

的路径模型块,设置指定为字符向量的变量值。

假设引用的模型使用模型参数来设置块参数值。如果模型有多个引用模型的实例,则模型变量查找器返回与模型参数关联的变量的多个实例。的ModelBlockPath属性通过为设置其值的模型块提供路径来唯一标识变量的实例。如果变量与引用的模型中的模型参数无关,则ModelBockPath是空的。有关引用模型和特定于实例参数的更多信息,请参阅参数化可重用引用模型的实例

是否包含使用此变量的块列表,指定为真正的.如果FormatPolicy财产有一个值“内联文本”,则该块列表不包括在报告中,无论ShowUsedBy财产。

如果报告包含Used By列表中某个块的报告内容,则单击该块的超链接可将您带到内容。看到生成模型变量、图表和模块的报告

是否包含解析变量的工作区,指定为真正的.如果FormatPolicy财产有一个值“内联文本”,Workspace不包含在报告中,无论值如何ShowWorkspaceInfo财产。

用于格式化使用变量的块列表的格式化程序mlreportgen.dom.unorderedlist.对象或一个mlreportgen.dom.OrderedList.对象。若要自定义列表的格式化方式,请修改列表对象属性或使用不包含列表项的自定义列表对象替换列表对象。

变量值的格式,指定为以下字符串或字符向量之一:

  • “汽车”- 根据值的数据类型格式化作为表或段落的变量值。

    格式为表的数据类型包括:

    • 单元阵列

    • 逻辑阵列

    • 数字数组

    • MATLAB®表格

    • 金宝app模型对象

    • Stateflow®对象

    • 图形对象

    • MATLAB结构或阵列结构

    • MATLAB对象或对象数组

    格式化为段落的数据类型包括:

    • 细胞向量

    • 逻辑标量或向量

    • 数字标量或向量

    • 字符或字符数组

    • 字符串

    • MATLAB结构向量

    • MATLAB对象矢量

  • “桌子”—将变量值格式化为表格。默认情况下以段落形式出现的变量被格式化为表项。层级结构对象的变量,如MATLAB结构、MATLAB对象、Simulink对象、statflow对象或图形对象,可以具有本身就是对象的属性。金宝app在这种情况下,层次结构被扁平化,属性值显示为指向该对象属性表的超链接。对象属性表还有一个回原始表的超链接。

  • “段落”—将变量值格式化为段落。默认情况下被格式化为表的变量被平铺和格式化为段落。

  • “内联文本”—根据周围的文本对变量进行格式化。

表报告器,用于格式化变量的值,指定为mlreportgen.report.BaseTable对象。若要自定义表的外观,请修改默认表报告器的属性或将其替换为自定义表报告器。如果你添加内容到标题属性时,内容将出现在生成的报表中的表标题前面。

用于格式化模型变量值的段格式化程序,指定为mlreportgen.dom.Paragraph对象。控件的属性可自定义段落的外观mlreportgen.dom.Paragraph对象或用自定义替换对象mlreportgen.dom.Paragraph对象。如果向默认或替换段落对象添加内容,则内容将出现在生成的报告中变量content的前面。

文本格式化器,当文本与周围的文本一致时,格式化模型变量的名称和值,指定为mlreportgen.dom.Text对象。要自定义文本的外观,请修改默认的属性mlreportgen.dom.Text对象或用自定义替换对象mlreportgen.dom.Text对象。如果向默认文本对象或替换文本对象添加内容,则内容将出现在生成的报告中变量content的前面。

要显示的表列的最大数目,指定为正整数。对于使用表报告的数组变量,如果列数大于maxcols.属性时,表将被垂直切片。切片将表分成多个表。

对于指定为非负整数的结构化对象或结构化对象数组的变量,报告的最大级别数。的值小于或等于的级别DepthLimit被平铺成一系列相互链接的表(参见FormatPolicy属性)。不报告大于深度限制的级别。如果你设置DepthLimit属性为0,结构化对象未扩展。

要报告的对象层次结构中对象的最大数目,指定为正整数。

是否包含标题,指定为真正的.标题包含变量名和可选的数据类型。如果IncludeTitle真正的,标题包括在内。默认情况下,标题只包含变量的名称。要包含变量的数据类型,请设置ShowDataType财产真正的

要报告的变量的标题,指定为字符向量、字符串标量、mlreportgen.dom.Text对象,mlreportgen.dom.InternalLink对象,或mlreportgen.dom.ExternalLink对象。

如果FormatPolicy属性设置为“内联文本”标题属性设置为:

  • 一个DOM对象,由该DOM对象指定的格式将被忽略

  • 一个mlreportgen.dom.InternalLinkmlreportgen.dom.ExternalLink对象时,链接文本用于标题,但标题不是链接

在这两种情况下,要格式化标题,请使用定义财产的ModelVariable记者。

如果不指定标题属性时,标题是变量名。

是否在标题中显示指定为的变量的数据类型真正的

是否显示指定为空值的属性真正的.的ShowEmptyValues属性仅适用于MATLAB对象,SIMULINK对象和StateFlow对象变量。金宝app

是否显示使用默认值的属性,指定为真正的.的ShowDefaultValues属性仅适用于MATLAB对象,SIMULINK对象和StateFlow对象变量。金宝app

函数或表达式从报表中过滤所报告模型变量的属性。指定一个函数作为函数句柄。将表达式指定为字符串标量或字符向量。此属性仅适用于包含对象的变量。如果你不提供PropertyFilterFcn,模型变量的所有属性都包含在报告中。

如果你提供一个函数句柄,关联的函数必须:

  • 把这些参数:

    • variableName- 正在报告的变量的名称

    • 变量Object.—上报的变量

    • propertyName—上报的变量的属性名

  • 返回真正的从报告中过滤指定的属性,或将属性包含在报告中。

例如,此代码阻止显示描述复杂性的属性金宝app仿真软件。参数对象。

进口slreportgen.finder。*进口slreportgen.report。*rpt = slreportgen.report.Report (“modelvarrpt”,“pdf”);model_name = load_system (“sldemo_mdlref_datamngt”);仪= slreportgen.finder.ModelVariableFinder (model_name);hasNext(finder) result = next(finder);varRptr = getReporter(结果);varRptr。PropertyFilterFcn = @varPropertyFilter;add (rpt, varRptr);结束关闭(rpt);close_system (model_name);rptview (rpt);函数tf = varPropertyFilter(~, variableObject,propertyName)如果isa (variableObject的金宝app仿真软件。参数的) tf = (propertyName == .“描述”) | |...(propertyName = =“复杂性”);其他的tf = false;结束结束

如果提供字符串标量或字符向量,则必须包含表达式。表达式:

  • 可以使用变量variableName,变量Object.,propertyName

  • 必须设置变量isFiltered真正的从报告中过滤指定的属性,或将属性包含在报告中

例如,这段代码过滤CoderInfo财产的金宝app仿真软件。参数反对报告。

进口slreportgen.finder。*进口slreportgen.report。*rpt = slreportgen.report.Report (“modelvarrpt”,“pdf”);model_name = load_system (“sldemo_mdlref_datamngt”);仪= slreportgen.finder.ModelVariableFinder (model_name);hasNext(finder) result = next(finder);varRptr = getReporter(结果);varRptr。PropertyFilterFcn =" isFiltered = "+..."isa(variableObject, '金宝appSimulink.Parameter') && "+...”propertyName = =“CoderInfo”;“;add (rpt, varRptr);结束关闭(rpt);close_system (model_name);rptview (rpt);

用于显示非整数值的格式或精度。

将格式指定为字符串标量或字符向量。看到formatSpec论点的sprintf参考页面。

将精度指定为正整数。看到精度论点的num2str参考页面。

例子:“% .2f”显示双位数,在小数点右边有两位数字。

例子:2显示两个有效数字的最大数目。

本文记者的模板来源,具体方式如下:

  • 指定包含此报告器模板的文件路径的字符向量或字符串标量

  • 该报表使用模板或模板库中包含该报表模板的报表或报表

  • DOM文档或文档部分,其模板用于此报表,或其模板库包含此报表的模板

指定的模板类型必须与该报表所附加的报表类型相同。例如,对于a微软®报告,TemplateSrc必须是Word记者模板。如果TemplateSrc属性为空时,报告程序将使用默认报告程序模板作为报告的输出类型。

此报告器的模板名称,指定为字符向量或字符串标量。该报告程序的模板必须位于模板源的模板库中(TemplateSrc)。

这个记者的超链接目标,指定为字符向量或字符串标量,指定链接目标ID,或者mlreportgen.dom.LinkTarget对象。将字符向量或字符串标量值转换为Linktarget.对象。在输出报告中,链接目标紧跟在该报告的内容前面。

方法

全部展开

例子

全部折叠

使用an的性质slreportgen.report.ModelVariable对象来自定义变量的格式。

%创建报告rpt = slreportgen.report.Report (“MyReport”,“pdf”);%创建一个章节章= mlreportgen.report.chapter();第一个=“模型变量报告实例”加载模型model_name =“slrgex_sf_car”;load_system (model_name);%找到模型中的变量仪= slreportgen.finder.ModelVariableFinder (model_name);hasNext(finder) result = next(finder);%获取ModelVariable报告结果%自定义数字格式记者= getReporter(结果);记者。NumericFormat =“%.4f”%将报告器添加到章节中添加(章,记者);结束%向报告中添加章节add (rpt,章);%关闭报表并打开查看器关闭(rpt);rptview (rpt);

生成一个报告,其中包括:

  • 关于模型变量的一章

  • 每个模型图的一章,其中图表中的块部分

模型变量的Used By列表中的每个块名都是指向该块报告的相应内容的超链接。

%创建报告rpt = slreportgen.report.Report (“MyReport”,“pdf”);加载模型model_name =“slrgex_sf_car”;load_system (model_name);%为变量创建一个章节章= mlreportgen.report.chapter();chapter.title = sprintf(“%s模型的模型变量报告”, model_name);%找到模型中的变量仪= slreportgen.finder.ModelVariableFinder (model_name);%报告变量hasNext(finder) result = next(finder);记者= getReporter(结果);添加(章,记者);结束add (rpt,章);%向报告中添加图表finder = slreportgen.finder.diagramfinder(model_name);hasNext(finder) result = next(finder);ch = mlreportgen.report.Chapter (result.Name);添加(ch,结果);%为图表中的块添加一个区段教派= mlreportgen.report.Section (“标题”,“块”);blFinder = slreportgen.finder.BlockFinder (result.Object);HASNEXT(BLFINDER)BlockResult = Next(Blfinder);添加(sect,blockresult);结束添加(ch,教派);add (rpt, ch);结束%关闭并查看报表关闭(rpt);rptview (rpt);
介绍了R2019b