创建报表生成器
这个示例展示了如何创建一个简单的报告来解释和演示幻方——其列、行和对角线各相加为相同数字的矩阵。看到魔法
。
请注意
完整的示例代码包含在分步说明之后。
导入基类。
为了避免使用Report和DOM API对象的完全限定名,可以使用这些语句。例如,不要用
mlreportgen.report.Report
,你可以用报告
。进口mlreportgen.report。*进口mlreportgen.dom。*
创建报表对象。
创建报表对象。使用
“魔法”
作为其文件名和“html”
作为其报告类型。报告()“魔法”,“html”);
若要自定义应用于整个报表的属性,请参见
mlreportgen.report.Report
。添加标题页。
创建标题页,并指定标题、副标题和作者。然后,向报告添加标题页。
tp = TitlePage;tp。Title =“魔术方块”;tp。字幕=“列、行、对角线:都是等和”;tp。作者=“Albrecht Durer”;追加(rpt, tp);
请注意
如果你用的是MATLAB®版本为R2020a或更早版本,请更换
附加
函数与添加
。若要自定义其他标题页属性,请参见
mlreportgen.report.TitlePage
。添加一个目录。
向报表添加默认的内容表对象。
追加(rpt TableOfContents);
请注意
如果您使用的是MATLAB版本R2020a或更早版本,请替换
附加
函数与添加
。若要自定义目录,请参见
mlreportgen.report.TableOfContents
。增加一章和章节。
为介绍创建一个章节对象,并指定章节标题。添加一节,在该节中添加一段,然后将该节添加到章节中。创建另一个部分,并在其中添加一个段落。
ch1 = Chapter;ch1。Title =“介绍”;sec1 = Section;sec1。Title =“什么是魔法广场?”;para =段落([幻方是一个n × n矩阵…由整数1到N^2构成…行,列,对角线和相等]);append(sec1, sec1) sec2 = sec1;sec2。Title =《阿尔布雷希特·丢勒和魔法广场》;para =段落([…德国艺术家阿尔布雷希特·丢勒(1471-1528)创作的…许多木刻和版画都有宗教和…“科学的象征。他最著名的作品之一,…《忧郁症1》,探索抑郁的心境…“这与灵感和表达相悖。”…文艺复兴时期的占星家认为木星…魔方(显示在的右上角)…(这个形象)可以帮助治疗忧郁。“…雕刻的日期(1514年)可以在…"正方形中较低的一排数字"]);追加(sec2 para)追加(ch1 sec2)
请注意
如果您使用的是MATLAB版本R2020a或更早版本,请替换
附加
函数与添加
。有关自定义章节和节的信息,请参见
mlreportgen.report.Chapter
和mlreportgen.report.Section
分别。添加一个数字。
在图形窗口中创建丢勒的图像。在MATLAB图形中创建图像。将图添加到引言章节的第二部分,然后将章节添加到报告中。
durerImage =负载((“durer.mat”),“垫”);图(“单位”,“像素”,“位置”,…[200200] size(durerImage.X,2)*.5…大小(durerImage.X 1) *。5);图像(durerImage.X);colormap (durerImage.map);轴(“图像”);集(gca),“Xtick”[],“Ytick”[],…“单位”,“正常”,“位置”,[0 0 1 1]);append(sec2,图)append(rpt,ch1) closegcf
请注意
如果您使用的是MATLAB版本R2020a或更早版本,请替换
附加
函数与添加
。有关数字的更多信息,请参见
mlreportgen.report.Figure
。有关图像的更多信息,请参见mlreportgen.report.FormalImage
。添加一个表。
添加另一个章节对象并指定其标题。指定MATLAB代码来创建一个10 × 10的魔方。将结果添加到表中,并设置这些表属性:
行和列分隔符
表边境
表项对齐
然后,将表格添加到章节中,将章节添加到报告中。
ch2 = Chapter();ch2。Title = sprintf()“10 × 10魔方”);Square = magic(10);tbl = Table(square);资源描述。Style = {…RowSep (“固体”,“黑”,“1 px”),…ColSep (“固体”,“黑”,“1 px”});资源描述。边境=“双”;资源描述。TableEntriesStyle = {“中心”)};追加(ch2(资源);追加(rpt, ch2);
请注意
如果您使用的是MATLAB版本R2020a或更早版本,请替换
附加
函数与添加
。有关表的更多信息,请参见
mlreportgen.dom.Table
。在章节中添加MATLAB图形。
添加另一个章节对象并指定其标题。指定MATLAB代码来创建一个25 × 25的幻方和幻方的彩色编码图形。然后,创建一个图形对象并设置其高度、宽度和标题。将图形添加到章节中,将章节添加到报告中。
ch3 = Chapter();甲基。Title = sprintf()“25 x 25魔方”);正方形=魔术(25);clf;显示亮度图像(广场)组(gca,“Ydir”,“正常”)轴平等的轴紧fig =图(gcf);fig.Snapshot.Height =“4”;fig.Snapshot.Width =“6”;fig.Snapshot.Caption = sprintf(“25 x 25魔方”);追加(ch3、无花果);追加(rpt, ch3);删除(gcf)
请注意
如果您使用的是MATLAB版本R2020a或更早版本,请替换
附加
函数与添加
。有关数字的更多信息,请参见
mlreportgen.report.Figure
。关闭并运行报告。
关上(rpt) rptview (rpt)
完整代码如下:
进口mlreportgen.report。*进口mlreportgen.dom。*报告()“魔法”,“html”);tp = TitlePage;tp。Title =“魔术方块”;tp。字幕=“列、行、对角线:都是等和”;tp。作者=“Albrecht Durer”;追加(rpt, tp);追加(rpt TableOfContents);ch1 = Chapter;ch1。Title =“介绍”;sec1 = Section;sec1。Title =“什么是魔法广场?”;para =段落([幻方是一个n × n矩阵…由整数1到N^2构成…行,列,对角线和相等]);append(sec1, sec1) sec2= sec1;sec2。Title =《阿尔布雷希特·丢勒和魔法广场》;para =段落([…德国艺术家阿尔布雷希特·丢勒(1471-1528)创作的…许多木刻和版画都有宗教和…“科学的象征。他最著名的作品之一,…《忧郁症1》,探索抑郁的心境…“这与灵感和表达相悖。”…文艺复兴时期的占星家认为木星…魔方(显示在的右上角)…(这个形象)可以帮助治疗忧郁。“…雕刻的日期(1514年)可以在…"正方形中较低的一排数字"]);append(ch1,sec2) =load(sec1,sec2)“durer.mat”),“垫”);图(“单位”,“像素”,“位置”,…[200200] size(durerImage.X,2)*.5…大小(durerImage.X 1) *。5);图像(durerImage.X);colormap (durerImage.map);轴(“图像”);集(gca),“Xtick”[],“Ytick”[],…“单位”,“正常”,“位置”,[0 0 1 1]);append(sec2,图)append(rpt,ch1) closegcfch2 = Chapter();ch2。Title = sprintf()“10 × 10魔方”);Square = magic(10);tbl = Table(square);资源描述。Style = {…RowSep (“固体”,“黑”,“1 px”),…ColSep (“固体”,“黑”,“1 px”});资源描述。边境=“双”;资源描述。TableEntriesStyle = {“中心”)};追加(ch2(资源);追加(rpt, ch2);ch3 = Chapter();甲基。Title = sprintf()“25 x 25魔方”);正方形=魔术(25);clf;显示亮度图像(广场)组(gca,“Ydir”,“正常”)轴平等的轴紧fig =图(gcf);fig.Snapshot.Height =“4”;fig.Snapshot.Width =“6”;fig.Snapshot.Caption = sprintf(“25 x 25魔方”);追加(ch3、无花果);追加(rpt, ch3);Delete (gcf) close(rpt) rptview(rpt)
请注意
如果您使用的是MATLAB版本R2020a或更早版本,请替换附加
函数与添加
。