这个例子展示了如何使用MATLAB®API for PowerPoint®(PPT API)从一个MATLAB应用程序的结果生成一个Microsoft®PowerPoint®演示文稿。该示例根据预测美国人口的应用程序的结果生成演示。下面是示例生成的幻灯片:
导入PPT包,这样您就不必使用长且完全限定的名称。
进口mlreportgen.ppt。*;
为了方便删除示例生成的图像,创建一个单元格数组来保存这些图像。
图像= {};
使用默认模板创建演示文稿。
ppt =表示(“population.pptx”);打开(ppt);
PowerPoint演示文稿由预定义的布局创建的幻灯片组成。布局包含用生成的内容填充的占位符。预定义的布局属于定义样式的模板幻灯片母版。
将第一张幻灯片添加到演示文稿中,使用标题幻灯片
布局。
slide1 =添加(ppt,“标题幻灯片”);
使用Replace方法替换幻灯片中的标题和副标题。
替换(slide1“标题”,“模拟美国人口”);替换(slide1“字幕”,“高风险业务”);
将第二张幻灯片添加到演示文稿中标题和内容
布局。更换标题。
slide2 =添加(ppt,的标题和内容);替换(slide2“标题”,“人口建模方法”);
添加文本到内容
使用单元格数组的占位符。
替换(slide2“内容”, {...“适合美国人口普查数据的多项式”...“使用多项式来推断人口增长”...[基于《数学计算的计算机方法》...由Forsythe, Malcolm和Moler合著,Prentice-Hall出版社于1977年出版]..."变多项式度显示方法的风险"});
将第三张幻灯片添加到演示文稿中标题和内容
布局。更换标题。
slide3 =添加(ppt,的标题和内容);替换(slide3“标题”,“1900 - 2000年美国人口普查数据”);
绘制1910年至2000年的美国人口普查数据图。
%的时间间隔t =(1910:10:2000)”;%的人口P = [91.972 105.711 123.203 131.669 150.697...';%的阴谋图一=图;情节(t, p,“波”);Axis ([1910 2020 0 400]);标题(《美国人口1910-2000》);ylabel (“数百万”);
将plot转换为图像。将图像添加到要在演示生成结束时删除的图像列表中。在您关闭演示文稿之前,不能删除图像。
img1 =“plot1.png”;img1 saveas(图一);
图像= [Images {img1}];
取代内容
与图像占位符。
替换(slide3“内容”照片(img1));
将第四张幻灯片添加到演示文稿中比较
布局。使用这张幻灯片来比较人口数据的三次外推和四次外推。
slide4 =添加(ppt,“比较”);替换(slide4“标题”,“多项式次数改变外推”);
计算总体数据的多项式近似系数。
n =长度(t);s = (t - 1950) / 50;一个= 0 (n);(:,结束)= 1;为A(:,j) = s .* A(:,j+1);结束c = (:, n: n) \ p;
取代离开文本
与文本占位符。
替换(slide4“左文本”,立方外推的);
计算三次外推。
v = (1910:2020) ';x = (v - 1950) / 50;50 w = (2010 - 1950) /;y = polyval (c、x);z = polyval (c w);图=图;持有在情节(v, y,“k -”);情节(2010 z,“ks”);文本(2010 z + 15, num2str (z));持有从
从情节中创建一个图像,并将该图像添加到要删除的图像列表中。
img2 =“plot2.png”;img2 saveas(图);
图像= [Images {img2}];
取代剩下的内容
与图像占位符。
替换(slide4“剩下的内容”照片(img2));
取代正确的文本
与文本占位符。
替换(slide4“对文本“,四次外推的);
计算四次外推。
c = (: 4 n: n) \ p;y = polyval (c、x);z = polyval (c w);如果=图;持有在情节(v, y,“k -”);情节(2010 z,“ks”);文本(2010年,z-15 num2str (z));持有从
从情节中创建一个图像,将该图像添加到要删除的图像列表中,并替换正确的内容
与图像占位符。
img3 =“plot3.png”;saveas(如果img3);
Images = [Images {img3}];替换(slide4“正确的内容”照片(img3));
将最后一张幻灯片添加到演示文稿中标题和内容
布局。
slide5 =添加(ppt,的标题和内容);替换(slide5“标题”,“随着程度的增加,推断变得更加不稳定。”);
创建一个情节来证明,随着程度的增加,推断变得更加不稳定。
图三=图;cla情节(t, p,“波”)举行在轴([1910 2020 0 400])颜色= hsv(8);标签= {“数据”};为d = 1:8 [Q,R] = qr(A(:,n-d:n));R = R (1: d + 1,);Q = Q (: 1: d + 1);c = R \ (Q * p);y = polyval (c、x);z = polyval (c, 11);情节(v, y,“颜色”、颜色(d,:));结束标签{+ 1}= (的程度= 'int2str (d)];结束传奇(标签,“位置”,“西北”)举行从
从情节中创建一个图像并替换内容
与图像占位符。
img4 =“plot4.png”;img4 saveas(图三);
Images = [Images {img4}];替换(slide5“内容”照片(img4));
关闭(ppt);rptview (ppt);
当演示结束时,图像被复制到演示中。现在,您可以删除这些图像。
len =长度(图片);为delete(images{I}); / /删除图片结束
mlreportgen.ppt.Presentation
|mlreportgen.ppt.Slide