slreportgen.report.LookupTable class

Пакет: slreportgen.report
Суперклассы: slreportgen.report.Reporter

Репортер блока интерполяционной таблицы

Описание

Создайте Simulink® репортер блока интерполяционной таблицы. Список поддерживаемых блоков см. в свойстве Object.

Примечание

Как использовать LookupTable репортер в отчете, вы должны создать отчет с помощью slreportgen.report.Report класс.

Конструкция

rptr = LookupTable() создает пустой LookupTable блок reporter на основе шаблона по умолчанию. Используйте его свойства, чтобы задать блок интерполяционной таблицы, на котором нужно сообщить, и задать опции отчета.

rptr = LookupTable(lutobj) создает LookupTable блок reporter для блока интерполяционной таблицы, заданный как lutobj. По умолчанию reporter генерирует таблицу и график выхода значений от точек по оси Х, и таблицу типов данных.

rptr = LookupTable(Name,Value) устанавливает LookupTable свойства reporter с использованием пар "имя-значение". Можно задать несколько аргументы пары "имя-значение" в любом порядке. Заключайте каждое имя свойства в одинарные или двойные кавычки.

Входные параметры

расширить все

См. свойство Object.

Свойства

расширить все

Блок интерполяционной таблицы для отчета, заданный как путь или указатель на блок.

Эти блоки интерполяционной таблицы поддерживаются.

Примечание

Если вы используете finder, чтобы найти блок Интерполяционная таблица и добавить его непосредственно к отчету, это LookupTable reporter используется, а не как свойство объекта Simulink.

Будет ли включать таблицу данных интерполяционной таблицы, заданную как логическая. Если trueотчет включает таблицу, в которой перечислены выходные значения и точки останова интерполяционной таблицы.

Для 1-D интерполяционной таблицы в таблице данных перечислены точки останова в первом столбце таблицы. Во втором столбце перечислены соответствующие выходные значения.

Для 2-D или большей интерполяционной таблицы размерностей в таблице данных приведен первый набор точек по оси Х в первой строке таблицы. Список второго набора точек по оси Х в первом столбце. Этот выход появляется в соответствующей таблице камер. Для интерполяционных таблиц, больше 2-D, LookupTable генератор отчетов показывает срезы таблицы как отдельный выход от таблиц точек по оси Х.

Включать ли график данных интерполяционной таблицы, заданный как логический. Если trueотчет включает график выходных значений от точек по оси Х блока интерполяционной таблицы.

Для интерполяционной таблицы 1-D график является линейным графиком выхода значений от точек по оси Х.

Для 2-D таблиц и срезов график является объемной поверхностной диаграммой или сетчатым графиком значений выхода от точек по оси Х. Используйте PlotType свойство, чтобы задать, использовать ли объемная поверхностная диаграмма или сетчатый график.

Тип графика для графика данных двумерной интерполяционной таблицы, заданный как символьный массив ('Объемная Поверхностная Диаграмма' или 'Сетчатый график') или как строка («Объемная Поверхностная Диаграмма» или «Сетчатый график»).

Репортер данных интерполяционной таблицы, заданный как BaseTable репортер или пользовательский репортер. The LookupTable reporter использует указанный репортер для создания таблицы данных интерполяционной таблицы.

Чтобы настроить внешний вид таблицы данных интерполяционной таблицы, настройте BaseTable по умолчанию репортер или замените его на пользовательскую версию BaseTable репортер.

Чтобы настроить заголовок таблицы данных интерполяционной таблицы, задайте содержимое в Title свойство репортера по умолчанию или замены. Заданное содержимое помещается спереди заголовка по умолчанию. Если интерполяционная таблица слишком широка, чтобы удобно помещаться на странице, используйте MaxCols свойство DataReporter чтобы сгенерировать таблицу как набор срезов, который подгонка правдоподобна. Чтобы определить оптимальное значение, итерация установки MaxCol значение и просмотр отчета.

Пример: lutable.DataReporter.Title = 'New Title'

Построение графика данных интерполяционной таблицы в виде Figure репортер или пользовательский репортер. The LookupTable reporter использует указанного репортера, чтобы создать график значений выхода от точек останова интерполяционной таблицы.

Чтобы настроить внешний вид графика данных интерполяционной таблицы, настройте Figure по умолчанию репортер или замените его на пользовательскую версию Figure репортер. Чтобы настроить заголовок графика, задайте содержимое Caption свойство репортера по умолчанию или замены. Заданное содержимое находится спереди подписи по умолчанию.

Максимальное количество столбцов таблицы для отображения значений выхода от точек останова, заданное как inf или целое число. Это свойство применяется только в том случае, если IncludeTable свойство имеет значение true.

Если количество столбцов интерполяционной таблицы больше, чем значение этого свойства, данные отображаются только как объемная поверхностная диаграмма. График появляется только, если IncludePlot свойство имеет значение true.

Значение по умолчанию этого свойства inf, что заставляет репортера использовать таблицу независимо от размера массива данных интерполяционной таблицы. В зависимости от размера отображаемых данных некоторые таблицы могут оказаться неразрешимыми. Чтобы избежать создания неразрешимых таблиц, измените настройку по умолчанию этого свойства на меньшее значение.

Источник шаблона для этого репортера, заданный одним из следующих способов:

  • Вектор символов или строковый скаляр, который задает путь к файлу, содержащему шаблон для этого репортера

  • Репортер или отчет, шаблон которого используется для этого репортера или библиотека шаблонов которого содержит шаблон для этого репортера

  • DOM-документ или деталь документа, шаблон которой используется для этого репортера или библиотека шаблонов которой содержит шаблон для этого репортера

Указанный шаблон должен совпадать с типом отчета, к которому добавлен этот репортер. Для примера, для Microsoft® Отчет о словах, TemplateSrc должен быть шаблоном репортера Word. Если на TemplateSrc свойство пусто, этот репортер использует шаблон репортера по умолчанию для типа выхода отчета.

Имя шаблона для этого репортера, заданное как вектор символов или строковый скаляр. Шаблон для этого репортера должен быть в библиотеке шаблонов источника шаблона (TemplateSrc) для этого репортера.

Цель гиперссылки для этого репортера, заданная как вектор символов или строковый скаляр, задающий идентификатор цели ссылки или mlreportgen.dom.LinkTarget объект. Вектор символов или строковое скалярное значение преобразуется в LinkTarget объект. Цель ссылки непосредственно предшествует содержимому этого репортера в выход отчете.

Методы

createTemplateСоздайте шаблон репортера интерполяционной таблицы Simulink
customizeReporterСоздайте пользовательский класс LookupTable reporter
getClassFolderРасположение файла определения класса интерполяционной таблицы

Унаследованные методы

copyСоздайте копию объекта-репортера Simulink и сделайте глубокие копии определенных значений свойств
getImplПолучите реализацию reporter

Примеры

Отчет по блоку интерполяционной таблицы

Создайте генератор отчета PDF, который сообщит о блоке интерполяционной таблицы. Этот пример использует slrgex_sf_car модель и отчеты о ее engine torque Lookup Table (n-D) блок. Этот блок является двумерной интерполяционной таблицей. The engine torque блок находится в Engine подсистема slrgex_sf_car модель. Отчет по умолчанию включает таблицу выхода значений от точек по оси Х, объемной поверхностной диаграмме, таблицу блока типов данных и отмечает возможные различия между сообщаемыми значениями и значениями, полученными из симуляции.

import slreportgen.report.*
import mlreportgen.report.*

model_name = 'slrgex_sf_car';
load_system(model_name); 
lutable = 'slrgex_sf_car/Engine/engine torque';

rpt = slreportgen.report.Report('output','pdf');
chapter = Chapter(lutable); 
rptr = LookupTable(lutable); 
add(chapter,rptr);
add(rpt,chapter);

close(rpt); 
close_system(model_name);
rptview(rpt)

Изменение высоты и ширины графика интерполяционной таблицы

Создайте генератор отчета PDF, который задает высоту и ширину графика, возвращенные LookupTable репортер. Этот пример использует slrgex_sf_car модель и отчеты о ее Torque ratio Lookup Table (n-D) блок. Этот блок является 1-D интерполяционной таблицей и находится в transmission/Torque Converter подсистема slrgex_sf_car модель. Чтобы задать высоту и ширину графика, используйте PlotReporter свойство.

import slreportgen.report.*
import mlreportgen.report.*

model_name = 'slrgex_sf_car';
load_system(model_name); 
lutable = 'slrgex_sf_car/transmission/Torque Converter/Torque ratio';

rpt = slreportgen.report.Report('output','pdf');
chapter = Chapter(lutable); 

rptr = LookupTable(lutable);
rptr.IncludeTable = false;
add(chapter,rptr);

rptr_resized = LookupTable(lutable);
rptr_resized.IncludeTable = false;
rptr_resized.PlotReporter.Snapshot.Width = '3in';
rptr_resized.PlotReporter.Snapshot.Height = '4in';
add(chapter,rptr_resized);

add(rpt,chapter);

close(rpt) ;
close_system(model_name)
rptview(rpt);

График по умолчанию на первой странице отчета использует предопределенное определение размеров для соответствия графика размеру страницы.

Измененный размер графика на второй странице отчета использует указанные 3 «ширина и 4» высота.

Поиск и отчет по интерполяционным таблицам и другим блокам

Создайте генератор отчета PDF, который находит все блоки в Engine подсистема slrgex_sf_car модель. Затем программа генератора отчетов зацикливается через блоки и проверяет, является ли блок блоком интерполяционной таблицы. Для блоков интерполяционной таблицы он использует LookupTable reporter, чтобы сообщить информацию о блоке. Для других блоков сгенерированный отчет сообщает о свойствах блоков, которые являются результатами BlockFinder класс.

import slreportgen.report.*
import slreportgen.finder.*

model_name = 'slrgex_sf_car';
load_system(model_name)
subsys_name = 'slrgex_sf_car/Engine';
rpt = slreportgen.report.Report;

blkfinder = BlockFinder(subsys_name);
blks = find(blkfinder);

for i=1:length(blks)
   if slreportgen.utils.isLookupTable(blks(i).Object)
      rptr = LookupTable(blks(i).Object);
      ch = Chapter(blks(i).Name);
      add(ch,rptr);
      add(rpt,ch);
   else
      ch = Chapter(blks(i).Name);
      add(ch,blks(i));
      add(rpt,ch);
   end
end

close(rpt);
close_system(model_name);
rptview(rpt);

В первой главе показаны свойства по умолчанию, сообщенные для блока Inport.

В пятой главе показаны выходы по умолчанию для репортера блока интерполяционной таблицы. По умолчанию выход является таблицей значений выхода от таблицы точек по оси Х, графиком и таблицей типов данных.

Настройка выхода LookupTable Reporter

В этом примере показано, как добавить фиксированное содержимое к настраиваемому HTML- LookupTable шаблон репортера. Можно также настроить вывод отчета интерполяционной таблицы путем непосредственного редактирования программы генератора отчетов. Преимущество настройки шаблона состоит в том, что его можно повторно использовать в качестве базиса для настройки другой программы генератора отчетов.

Шаблон и таблицы стилей для LookupTable репортер расположены в matlab\toolbox\shared\slreportgen\rpt\rpt\+slreportgen\+report\@LookupTable\resources\templates папка. Вам не нужно указывать этот путь при копировании шаблона по умолчанию.

  1. Создайте копию шаблона HTML по умолчанию. В этом примере пакет шаблона сохраняется как zipped-файл с именем CustomTemplate.htmtx в текущей рабочей папке.

    import mlreportgen.report.*
    import slreportgen.report.*
    
    LookupTable.createTemplate('CustomTemplate','html');
    

  2. Разархивируйте пакет шаблона.

    unzipTemplate('CustomTemplate.htmtx');

    Пакет разархивированного шаблона представляет собой папку с файлами документов, таблиц стилей и изображений. В этом примере разархивированная папка файлов называется «CustomTemplate» и сохраняется в текущей рабочей папке. The root.css файл, находящийся в подпапке таблиц стилей, задает стили, которые управляют внешним видом и форматированием сгенерированного отчета. The docpart_templates.html файл задает отверстия, в которых содержится содержимое отчета при создании отчета.

  3. Из CustomTemplate папка, откройте docpart_templates.html файл в текстовом редакторе за пределами MATLAB.

    <html>
      <head>
        <meta charset="utf-8" />
        <title>Document Part Templates</title>
        <link rel="StyleSheet" href="./stylesheets/root.css" type="text/css" />
      </head>  <body>
        <dplibrary>
            
          <!-- NOTE: temporary in the template library until the -->
          <!   DOM supports a source without template name -->
          <dptemplate name="LookupTable">
             <hole id="Content">LUT_CONTENT</hole>
             <hole id="LUTDataTypes">DATA_TYPE</hole>
             <hole id="FootNoteContent">LUT_FOOTNOTE_CONTENT</hole>
          </dptemplate>
          <dptemplate name="LookupTableContent">
             <hole id="TableContent">TABLECONTENT</hole>
             <hole id="FigureContent">FIGURECONTENT</hole>
          </dptemplate>
        </dplibrary>
      </body>
    </html>

  4. Чтобы добавить фиксированный текст к шаблону, поместите его в нужное место и используйте стандартную разметку HTML. Этот пример добавляет текст, который появляется над таблицей типов данных в сгенерированном отчете. Только <dptemplate name="LookupTable"> показана часть файла.

          <dptemplate name="LookupTable">
             <hole id="Content">LUT_CONTENT</hole>
             <p><scan>This lookup table block contains the following 
                data types:</scan></p>
             <hole id="LUTDataTypes">DATA_TYPE</hole>
             <hole id="FootNoteContent">LUT_FOOTNOTE_CONTENT</hole>
          </dptemplate>
    

  5. Сохраните файл.

  6. В командной строке MATLAB заархивируйте папку шаблона в пакет шаблона. В данном примере пакет шаблона zipped в CustomTemplate.htmtx файл.

    zipTemplate('CustomTemplate');

  7. Чтобы использовать сохраненный шаблон для отчета, укажите источник шаблона в программе генератора отчетов.

    lutable = LookupTable();
    lutable.TemplateSrc = 'CustomTemplate';

Введенный в R2018a