可以动态地将部分添加到matlab发布脚本中吗?

时间:2016-08-05 14:59:03

标签: matlab

我有一个matlab脚本,我想在我的matlab发布中动态创建部分。

目前,我知道创建分节符的唯一方法是将这样的代码放在我的脚本中:

%% This is a section break

我想在我的脚本上运行发布,并将分节符作为发布的一部分添加。例如。说我有以下脚本:

breaks(1).name = 'This is section break 1.';
breaks(2).name = 'This is section break 2.';

for ix = 1 : numel(breaks)
   functionThatInsertsSectionBreakTitle(breaks(ix).name);
   fprintf('Some random processing associated with break %d.\n', ix);
end

我想在该脚本上调用publish,最后得到一个类似于:

的文档
  

这是分节符1。

     

与break 1相关的一些随机处理。

     

这是分节符2。

     

与break 2相关的一些随机处理。

显然,我可以通过编写一个编写脚本然后由发布执行的脚本来做到这一点。我希望能有更直接的东西。我知道报告生成工具箱,我希望能够干净地处理这种情况。或者,如果新的(从R2016a开始)Live Script处理这个用例,那也是一个很好的答案。

1 个答案:

答案 0 :(得分:1)

解决此问题的一种方法是在命令输出中显示html代码(记录为here)。

在您的示例中,代码如下所示:

breaks(1).name = 'This is section break 1.';
breaks(2).name = 'This is section break 2.';

for ix = 1 : numel(breaks)
    disp(['<html><h2>' breaks(ix).name '</h2></html>']);
    fprintf('Some random processing associated with break %d.\n', ix);
end

当您想要使用自定义布局(例如表格)显示结果时,这非常有用。并且它避免了使用Matlab Report Generator许可证的需要......