Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

slmetric.dashboard.Layout 类

命名空间: slmetric.dashboard

创建用于保留度量仪表板自定义的对象

描述

保留小组件对象数组的对象。slmetric.dashboard.Layout 对象中小组件的大小、类型和位置决定度量仪表板的外观。以下是小组件对象:

  • slmetric.dashboard.Group

  • slmetric.dashboard.Container

  • slmetric.dashboard.Widget

  • slmetric.dashboard.CustomWidget

构造

对于 slmetric.dashboard.Configuration 对象,请使用 getDashboardLayout 方法创建一个 slmetric.dashboard.Layout 对象。您可以在此对象中添加或删除小组件。您可以在度量仪表板中指定这些小组件的大小和位置。完成设定后,应用 slmetric.dashboard.Configuration.save 方法以保存配置。使用 slmetric.dashboard.setActiveConfiguration 函数设置活动配置。

度量仪表板布局划分为 12 个大小相等的列。使用小组件对象方法来指定小组件大小。

方法

addWidget(To be removed) Add widget to slmetric.dashboard.Layout object
getWidgets(To be removed) Obtain a list of widgets in an slmetric.dashboard.Layout object
removeWidget(To be removed) Remove widget from slmetric.dashboard.Layout object

示例

全部折叠

您可以使用度量仪表板和度量 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 中推出