gpt4 book ai didi

windows - 从命令行运行 m 文件时如何隐藏 "MATLAB Command Window"?

转载 作者:可可西里 更新时间:2023-11-01 13:21:16 26 4
gpt4 key购买 nike

我正在使用如下命令行字符串运行 MATLAB:

C:\<a long path here>\matlab.exe -nodisplay -nosplash -nodesktop -r "run('C:\<a long path here>\mfile.m');"

m 文件包含一个 plot()在 x-y 平面上绘制一条简单曲线的函数。

m 文件成功运行并使用我在上面指定的命令行字符串绘制绘图。但是,每次我运行此命令时,都会出现一个名为“MATLAB 命令窗口”的窗口以及绘图。

如何让“MATLAB 命令窗口”不出现,以便只有绘图可见。

“MATLAB 命令窗口”如下所示: enter image description here

最佳答案

如果您从 Windows 上的另一个程序运行 Matlab,您可以使用 Matlab COM Automation Server 运行它. ActiveX 控件有一个 Visible 属性,可以让您使命令窗口不可见,但看起来它使绘图保持可见。

这是一个如何使用另一个 Matlab 作为 Controller 的示例。

ml = actxserver('Matlab.Application');
ml.Visible = false;
ml.Execute('surf(peaks)');

或者在 VBScript 中。

Set ml = CreateObject("Matlab.Application")
ml.Visible = false
ml.Execute("surf(peaks)")
ml.Execute("pause(4)")

无论如何,这种交互模式可能更符合您的需求,具体取决于您的工作流程的结构,因为它可以让您启动 Matlab 进程一次并在其上发出许多绘图请求,从而节省启动成本并让您拥有多个绘图立即可见。

如果您仍想从命令行调用它,只需使用上述 VBScript 代码通过 .vbs 包装器脚本运行它,但调用 run('...\mfile.m') 而不是 surf(peaks)。您的 mfile.m 将需要一些 GUI 逻辑,使其在用户关闭绘图之前一直阻塞,替换 pause 调用,因此它不会在用户完成查看之前消失。

关于windows - 从命令行运行 m 文件时如何隐藏 "MATLAB Command Window"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6717688/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com