Create custom table in report generator
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I need to create a customized table with 3 columns and a variable number of rows. The rows must contain the data that is in an array, which I populate using a For loop. The array has 3 columns but a variable number of rows depending on the subsystem. Is there a field in Simulink Report Generator that allows me to create a table with variable rows and to insert a rule (via code) for each column?
Is it possible to use a script to create this table? If so, what is the correct format?
0 Kommentare
Antworten (1)
Abhas
am 30 Jul. 2024
Hi Gugliemlo,
To create a custom table with 3 columns and a variable number of rows, you need to use the "mlreportgen.dom.Table" class correctly. The following MATLAB code demonstrates an example way to achieve this with sample data:
% Sample data array with variable number of rows and 3 columns
data = [
1, 2, 3;
4, 5, 6;
7, 8, 9
];
% Create a report
import mlreportgen.report.*
import mlreportgen.dom.*
rpt = Report('MyReport', 'pdf');
% Add a title to the report
title = Paragraph('Custom Table Report');
title.Bold = true;
title.FontSize = '14pt';
add(rpt, title);
% Create a table
numRows = size(data, 1);
numCols = size(data, 2);
table = Table();
% Add header row
headerRow = TableRow();
headerContent = {'Column 1', 'Column 2', 'Column 3'};
for col = 1:numCols
entry = TableEntry(headerContent{col});
entry.Style = {Bold(true)};
append(headerRow, entry);
end
append(table, headerRow);
% Populate the table with data
for row = 1:numRows
tableRow = TableRow();
for col = 1:numCols
entry = TableEntry(num2str(data(row, col)));
append(tableRow, entry);
end
append(table, tableRow);
end
numNewRows = 2;
numCols = size(initialData, 2);
for row = 1:numNewRows
tableRow = TableRow();
for col = 1:numCols
randomValue = randi(100); % Random integer between 1 and 100
entry = TableEntry(num2str(randomValue));
append(tableRow, entry);
end
append(table, tableRow);
end
% Add table to report
add(rpt, table);
% Close and view the report
close(rpt);
rptview(rpt);
OUTPUT:
You may refer to the following MathWorks documentation links to have a better understanding on creating tables in reports:
0 Kommentare
Siehe auch
Kategorien
Mehr zu Reporting and Database Access finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!