exponenta event banner

addWidget

Класс: slmetric.dashboard.Container
Пакет: slmetric.dashboard

Добавить виджет в slmetric.dashboard.Container объект

Описание

пример

newWidget = addWidget(container,widgetType,num) добавляет виджет в slmetric.dashboard.Container объект.

Входные аргументы

развернуть все

slmetric.dashboard.Container объект, для которого требуется добавить виджеты для настройки макета панели мониторинга метрик. Это свойство предназначено для чтения и записи.

Укажите Type свойство slmetric.dashboard.Container, slmetric.dashboard.Widget, slmetric.dashboard.Group, или slmetric.dashboard.CustomWidget объект.

Типы данных: char

Размещение виджета в контейнере на панели мониторинга метрик. Порядок виджетов в контейнере продолжается слева направо, а затем вниз в контейнере.

Выходные аргументы

развернуть все

Новый виджет, добавляемый в slmetric.dashboard.Container на панели мониторинга метрик. В контейнер можно добавить следующие виджеты:

  • slmetric.dashboard.Group

  • slmetric.dashboard.Container

  • slmetric.dashboard.CustomWidget

  • slmetric.dashboard.Widget

Примеры

развернуть все

Панель мониторинга Metrics Dashboard и API metric можно использовать для получения соответствия требованиям и выдачи метрических данных в конфигурации Model Advisor. Чтобы настроить конфигурацию Model Advisor, см. раздел Использование редактора конфигурации Model Advisor для настройки Model Advisor. Можно также использовать существующую группу проверок, такую как проверки MISRA. После настройки конфигурации Model Advisor выполните следующие действия, чтобы указать группы проверок, для которых требуется получить соответствие, и выдать метрические данные.

Откройте конфигурацию по умолчанию:

config=slmetric.config.Configuration.open()

Укажите идентификатор метрического семейства, который будет связан с этими группами проверок:

famParamID = 'ModelAdvisorStandard';

Создайте массив ячеек, состоящий из идентификаторов контрольных групп, соответствующих контрольным группам. Чтобы получить идентификатор группы проверок, откройте редактор конфигурации Model Advisor и выберите папку, содержащую группу проверок. Папка содержит параметр Check Group ID.

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

Предыдущий массив ячеек определяет группы проверки MAB, High-Integrity и MISRA. Ценности maab и hisl_do178 соответствуют подмножеству проверок MAB и системы высокой целостности. Чтобы включить все проверки, укажите значение параметра Идентификатор группы проверки (Check Group ID) в редакторе конфигурации Model Advisor.

Чтобы настроить конфигурацию, передайте values в массив ячеек setMetricFamilyParameterValues способ.

setMetricFamilyParameterValues(config, famParamID, values);

Укажите виджеты High Integrity Compliance и High Integrity Check Issues в группе проверки MISRA. Для начала откройте конфигурацию по умолчанию для макета панели мониторинга метрик.

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

Получить slmetric.dashboard.Layout объект из slmetric.dashboard.Configuration объект conf.

layout = getDashboardLayout(conf);

Получение объектов виджета, находящихся в объекте компоновки.

layoutWidget=getWidgets(layout);

Получение группы соответствия из формата. Эта группа содержит два контейнера. Первый контейнер содержит виджеты High Integrity и MAB Compliance and Check Issues. Удалите виджет соответствия высоким требованиям целостности.

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'};

Добавьте пользовательский виджет для визуализации метрик проблем проверки MISRA в complianceContainers slmetric.dashboard.Container объект.

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'));

Для модели откройте панель мониторинга метрик.

metricsdashboard sf_car

Нажмите кнопку «Все метрики» и запустите все метрики.

Представлен в R2018b