mlreportgen.report.MATLABVariable 类
命名空间: mlreportgen.report
超类: mlreportgen.report.Reporter
MATLAB 变量报告器
描述
创建一个报告 MATLAB® 变量的报告器。
mlreportgen.report.MATLABVariable
类是一个 handle
类。
创建对象
描述
根据默认模板创建 MATLAB 变量报告器。在将此报告器添加到报告之前,请使用其属性指定要报告的变量名称。rptr
= mlreportgen.report.MATLABVariable
rptr = mlreportgen.report.MATLABVariable(variable)
为指定的 MATLAB variable
创建 MATLAB 变量报告器。要指定局部变量,请指定其名称,例如 MATLABVariable(x)
。要指定 MATLAB 工作区变量,请将其名称指定为字符向量或字符串标量,例如 MATLABVariable("x")
。要指定其他报告选项,请使用此报告器的属性。
创建一个 MATLAB 变量报告器,其选项由一个或多个 rptr
= mlreportgen.report.MATLABVariable(Name=Value
)Name=Value
对参量指定。Name
是属性名称,Value
是相应的值。您可以以任意顺序的 Name1=Value1,...,NameN=ValueN
形式指定多个名称-值参量。
属性
MATLAB 变量名称,指定为字符向量或字符串标量。指定的变量可以是以下任意数据类型:
字符向量
字符串标量
元胞向量或元胞数组
逻辑标量、逻辑向量或逻辑数组
数值标量、数值数组或数值向量
MATLAB 表
MATLAB 对象向量或对象数组
Simulink® 对象
Stateflow® 对象
图形对象
MATLAB 结构、结构向量或结构体数组
枚举
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
变量的位置,指定为以下字符串之一或字符向量:
"MATLAB"
- 基础工作区"MAT-File"
- 此报告器的FileName
属性中指定的 MAT 文件"Global"
- 全局命名空间"Local"
- 本地命名空间,通常是创建此报告器的函数或工作区的命名空间"Model"
- 此报告器的FileName
属性中指定的 Simulink Report Generator™ 模型的工作区"User-Defined"
-setVariableValue
方法设置要报告的值,并将此属性设置为"User-Defined"
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
包含变量的 MAT 文件或 Simulink 模型的名称,指定为字符串标量或字符向量。仅当 Location
属性值为 MAT-File
或 Model
时,此属性才适用。如果 Location
是 MAT-File
,则文件名就是从中获取变量的 MAT 文件的名称。如果 Location
是 Model
,那么 FileName
就是包含该变量的 Simulink 模型文件的名称。
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
变量值的格式,指定为以下字符串或字符向量之一:
"Auto"
- 根据值的数据类型将变量值格式化为表或段落。格式化为表的数据类型包括:
元胞数组
逻辑数组
数值数组
MATLAB 表
Simulink 对象
Stateflow 对象
图形对象
MATLAB 结构体或结构体数组
MATLAB 对象或对象数组
定义属性的 MATLAB 枚举类
格式化为段落的数据类型包括:
元胞向量
逻辑标量或向量
数值标量或矢量
字符或字符向量
字符串
MATLAB 结构体向量
MATLAB 对象向量
MATLAB 未定义属性的枚举类
"Table"
- 以表形式格式化变量值。默认以段落形式出现的变量被格式化为表条目。作为层次结构对象的变量(例如 MATLAB 结构、MATLAB 对象、Simulink 对象、Stateflow 对象或图形对象)可以具有本身就是对象的属性。在这种情况下,层次结构变得扁平,并且属性值显示为指向该对象属性表的超链接。对象属性表还具有指向原始表的超链接。"Paragraph"
- 将变量值格式化为段落。默认情况下格式化为表的变量将被展平并格式化为段落。"Inline Text"
- 将变量格式化为与周围文本一致。
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
此 MATLABVariable
报告器使用的表报告器来格式化变量值,指定为 mlreportgen.report.BaseTable
对象。要自定义表的外观,请修改默认的 BaseTable
报告器属性或将其替换为自定义的 BaseTable
报告器。如果您向默认或自定义报告器的 Title
属性添加内容,则该内容将出现在生成的报告中的表标题前面。
属性:
GetAccess | public |
SetAccess | public |
段落格式化程序对象用于格式化 MATLAB 变量的值,指定为 mlreportgen.dom.Paragraph
对象。要自定义段落的外观,请修改 DOM Paragraph
对象属性或将该对象替换为自定义的 Paragraph
对象。如果您向默认或替换段落对象添加内容,则该内容会出现在生成的报告中的变量内容前面。
属性:
GetAccess | public |
SetAccess | public |
文本格式化程序对象,用于格式化表或段落中的 MATLAB 变量文本值,指定为 mlreportgen.dom.Text
对象。要自定义文本的外观,请修改 DOM Text
对象属性或用自定义的 Text
对象替换该对象。如果向默认或替换文本对象添加内容,则该内容会出现在生成的报告中的变量内容前面。
属性:
GetAccess | public |
SetAccess | public |
要显示的最大表列数,指定为正整数。对于使用表报告的数组变量,如果列数大于 MaxCols
属性的值,则对表进行垂直切片。切片将表分成多个表。
属性:
GetAccess | public |
SetAccess | public |
数据类型: int32
对于结构化对象或结构化对象数组的变量,要报告的最大级别数,指定为非负整数。小于或等于 DepthLimit
值的级别将被展平为一系列相互链接的表(请参阅 FormatPolicy
属性)。不会报告超过深度限制的水平。如果将 DepthLimit
属性设置为 0,则结构化对象不会扩展。
属性:
GetAccess | public |
SetAccess | public |
数据类型: int32
要报告的对象层次结构中的最大对象数,指定为正整数。
属性:
GetAccess | public |
SetAccess | public |
数据类型: int32
是否包含标题,指定为 true
或 false
。标题包含变量名称和可选的数据类型。如果 IncludeTitle
是 true
,则包含标题。默认情况下,标题仅包含变量的名称。要包含变量的数据类型,请将 ShowDataType
属性设置为 true
。
属性:
GetAccess | public |
SetAccess | public |
数据类型: logical
要报告的变量的标题,指定为字符向量、字符串标量、mlreportgen.dom.Text
对象、mlreportgen.dom.InternalLink
对象或 mlreportgen.dom.ExternalLink
对象。
如果将 FormatPolicy
属性设置为 "Inline Text"
并且将 Title
属性设置为:
DOM 对象,DOM 对象指定的格式被忽略
mlreportgen.dom.InternalLink
或mlreportgen.dom.ExternalLink
对象,链接文本用于标题,但标题不是链接
在这两种情况下,要格式化标题,请使用此 MATLABVariable
报告器的 TextFormatter
属性。
如果不指定 Title
属性,则标题就是变量名称。
属性:
GetAccess | public |
SetAccess | public |
是否在标题中显示变量的数据类型,指定为 true
或 false
。
属性:
GetAccess | public |
SetAccess | public |
数据类型: logical
是否显示具有空值的属性,指定为 true
或 false
。ShowEmptyValues
属性仅适用于 MATLAB 对象、Simulink 对象和 Stateflow 对象变量。
属性:
GetAccess | public |
SetAccess | public |
数据类型: logical
是否显示使用默认值的属性,指定为 true
或 false
。ShowDefaultValues
属性仅适用于 MATLAB 对象、Simulink 对象和 Stateflow 对象变量。
属性:
GetAccess | public |
SetAccess | public |
数据类型: logical
用于从报告中过滤变量属性的函数或表达式。指定一个函数作为函数句柄。将表达式指定为字符向量或字符串标量。此属性仅适用于包含对象的变量。如果不提供 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);
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
| function_handle
用于显示非整数数值的格式或精度。
将格式指定为字符串标量或字符向量。请参阅 sprintf
参考页面上的 formatSpec
参量。
将精度指定为正整数。请参阅 num2str
参考页面上的 precision
参量。
示例: "%.2f"
显示小数点右边有两位数字的双精度值。
示例: 2
显示最多两位有效数字。
属性:
GetAccess | public |
SetAccess | public |
数据类型: int32
| char
| string
该报告器的模板来源,以下列方式之一指定:
字符向量或字符串标量,指定包含此报告器模板的文件的路径
此报告器使用的模板或其模板库中包含此报告器模板的报告器或报告
文档对象模型 (DOM) 文档或文档部分,该报告器使用其模板或其模板库包含该报告器的模板
指定的模板必须与您附加此报告器的报告类型相同。例如,对于 Microsoft® Word 报告,TemplateSrc
必须是 Word 报告模板。如果 TemplateSrc
属性为空,则此报告器将使用默认报告器模板作为报告的输出类型。
属性:
GetAccess | public |
SetAccess | public |
NonCopyable | true |
此报告器的模板名称,指定为字符向量或字符串标量。该报告器的模板必须位于该报告器的 TemplateSrc
属性指定的模板的模板库中。
属性:
GetAccess | public |
SetAccess | public |
数据类型: char
| string
此报告器的超链接目标,指定为指定链接目标 ID 的字符向量或字符串标量,或 mlreportgen.dom.LinkTarget
对象。字符向量或字符串标量值转换为 LinkTarget
对象。链接目标在输出报告中紧接着此报告器的内容。
属性:
GetAccess | public |
SetAccess | public |
方法
方法 | 用途 |
---|---|
getVariableValue | 获取 MATLAB 变量值 |
setVariableValue | 设置要报告的变量的值 |
mlreportgen.report.MATLABVariable.createTemplate |
创建报告器模板 输入参量
返回值
有关更多信息,请参阅 |
mlreportgen.report.MATLABVariable.customizeReporter |
创建源自 返回值
有关更多信息,请参阅 |
mlreportgen.report.MATLABVariable.getClassFolder |
获取包含 返回值
有关更多信息,请参阅 |
copy | 创建报告器对象的副本,并对某些属性值进行深度复制 |
getImpl | 获取报告器的实现 |
示例
此示例显示如何报告 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 中推出
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)