主要内容

addWidget

类: slmetric.dashboard.Layout
命名空间: slmetric.dashboard

(即将删除)向 slmetric.dashboard.Layout 对象中添加小组件

以后的版本中将会删除度量仪表板用户界面、metricdashboard 函数、slmetric 包 API 以及相应的自定义项。有关详细信息,请参阅Migrating from Metrics Dashboard to Model Maintainability Dashboard

说明

newWidget = addWidget(dashboardLayout,widgetType,num)slmetric.dashboard.Layout 对象中添加小组件。

输入参数

全部展开

要为其添加小组件以自定义度量仪表板布局的 slmetric.dashboard.Layout 对象。

指定 slmetric.dashboard.Containerslmetric.dashboard.Widgetslmetric.dashboard.Groupslmetric.dashboard.CustomWidget 对象的 Type 属性。

数据类型: char

小组件在度量仪表板上的布局。小组件的顺序是先从左到右,然后从上到下。

输出参量

全部展开

您要向度量仪表板添加的新小组件。选择下列小组件之一:

  • slmetric.dashboard.Group

  • slmetric.dashboard.Container

  • slmetric.dashboard.Widget

  • slmetric.dashboard.Custom

示例

全部展开

您可以使用度量仪表板和度量 API 来获取关于模型顾问配置的合规性和问题度量数据。要设置您的模型顾问配置,请参阅使用模型顾问配置编辑器来自定义模型顾问。您也可以使用现有检查组,如 MISRA 检查。设置模型顾问配置后,按照以下步骤指定要获取合规性和问题度量数据的检查组:

通过输入以下命令打开模型 vdp

openExample('simulink_general/VanDerPolOscillatorExample')

打开默认配置:

config=slmetric.config.Configuration.open()

指定与这些检查组关联的度量族 ID:

famParamID = 'ModelAdvisorStandard';

创建一个由与检查组对应的检查组 ID 组成的元胞数组。通过打开模型顾问配置编辑器并选择包含检查组的文件夹来获取一个检查组 ID。该文件夹包含检查组 ID 参数。

values = {'maab', 'hisl_do178', '_SYSTEM_By Task_misra_c'};

先前的元胞数组指定 MAB、高完整性和 MISRA 检查组。值 maabhisl_do178 对应于 MAB 和高完整性系统检查的子集。要包括所有检查,请从模型顾问配置编辑器中指定检查组 ID 参数的值。

要设置配置,请将 values 元胞数组传递给 setMetricFamilyParameterValues 方法。

setMetricFamilyParameterValues(config, famParamID, values);

高完整性合规性高完整性检查问题小组件指向 MISRA 检查组。首先,打开度量仪表板布局的默认配置。

conf = slmetric.dashboard.Configuration.open();

slmetric.dashboard.Configuration 对象 conf 中获取 slmetric.dashboard.Layout 对象。

layout = getDashboardLayout(conf);

获取布局对象中的小组件对象。

layoutWidget = getWidgets(layout);

从布局中获取合规组。此组包含两个容器。第一个容器包含“高完整性”和“MAB 合规性”以及“检查问题”小组件。删除高完整性合规性小组件。

complianceGroup = layoutWidget(3);
complianceContainers = getWidgets(complianceGroup);
complianceContainerWidgets = getWidgets(complianceContainers(1));
complianceContainers(1).removeWidget(complianceContainerWidgets(1)); 
setMetricIDs(complianceContainerWidgets(1),...
({'mathworks.metrics.ModelAdvisorCompliance._SYSTEM_By Task_misra_c'}));
complianceContainerWidgets(1).Labels = {'MISRA'};

complianceContainers slmetric.dashboard.Container 对象添加用于可视化 MISRA 检查问题度量的自定义小组件。

misraWidget = complianceContainers(1).addWidget('Custom',1); 
misraWidget.Title = ('MISRA'); 
misraWidget.VisualizationType = 'RadialGauge'; 
misraWidget.setMetricIDs('mathworks.metrics.ModelAdvisorCheckCompliance._SYSTEM_By Task_misra_c'); 
misraWidget.setWidths(slmetric.dashboard.Width.Medium);

保存配置对象。这些命令将 API 信息序列化为 XML 文件。

save(config,'FileName','MetricConfig.xml');
save(conf,'Filename','DashboardConfig.xml');

设置活动配置。

slmetric.config.setActiveConfiguration(fullfile(pwd,'MetricConfig.xml'));
slmetric.dashboard.setActiveConfiguration(fullfile(pwd,'DashboardConfig.xml'));

打开模型 vdp 的度量仪表板。

metricsdashboard vdp

点击所有度量按钮以运行所有度量。

版本历史记录

在 R2018b 中推出

全部折叠