Matlab .m文件自动打印

Matlab .m文件自动打印,matlab,plot,Matlab,Plot,我创建了一个.m文件,如下所示: function M clc clear T=[ 1 2 3 4 5 6 7 8 9 ]; surface (T) shading interp end 我想要的是:当点击m文件时(我的意思是当m文件打开时),matlab运行它。所以用户无需点击RUN 编辑:我希望在打开m文件时运行脚本 我需要这个,因为我在一个C#程序的末尾创建了这个M文件,C#程序打开M文件只是为了显示图形。因此,最好在打开后自动运行并显示图形。(因此,用户可以轻松

我创建了一个.m文件,如下所示:

function M
clc
clear
T=[
1   2   3
4   5   6
7   8   9
];
surface (T)
shading interp
end

我想要的是:当点击m文件时(我的意思是当m文件打开时),matlab运行它。所以用户无需点击RUN

编辑:我希望在打开m文件时运行脚本 我需要这个,因为我在一个C#程序的末尾创建了这个M文件,C#程序打开M文件只是为了显示图形。因此,最好在打开后自动运行并显示图形。(因此,用户可以轻松查看图形,无需运行它。)
我认为可能有一种简单的方法,比如在m文件中编写一个代码,使其在打开后立即运行。

如果您试图避免用户必须手动运行该函数,您可以使用批处理文件自动启动MATLAB并运行该函数。 创建批处理文件(使用文本编辑器并以.bat扩展名保存)

如果搜索,可以找到更多信息和其他选项


或者,您可以将MATLAB生成的图形保存为.FIG,并让用户加载该图形。(或者另存为pdf格式,避免让他们完全使用MATLAB)

我根本没有使用C#的经验,但在我看来,实现您想要的最好方法是从C#程序中调用MATLAB函数。我知道使用
mex
文件可以很容易地将matlab集成到C程序中

你应该在上查看这个链接,也许它可以帮助你。如果您能够直接从C程序调用matlab函数,用户甚至不必单击m文件

如果您真的希望用户必须单击m文件,但之后不要单击“运行”按钮,我假设您正在处理的用户不了解matlab,因此matlab尚未运行,因此您希望他们在Windows(或其他操作系统)中而不是在matlab中单击m文件

然后,通过单击m文件,应打开matlab实例,并在编辑器中单击该文件

您可以在matlab的启动目录中创建或编辑
startup.m
文件(请参阅)。这是matlab启动时执行的脚本文件。因此,如果您在C#程序中创建了一个
startup.m
,其中包含一行调用所需的matlab函数(
m
,来自您的示例),则该函数应仅在单击函数文件后执行


但是,如果matlab的一个实例已经在运行,则不会调用
startup.m
脚本,并且此方法将不再有效。

为什么-1??!!而不是回答。问题不清楚?!或者它没有表现出任何努力或研究?!有什么问题?!请确切说明你的意思。是否希望脚本在matlab启动时运行?还是希望在打开文件时立即运行脚本?为什么不先按“run”键,或者在命令窗口中键入函数名,然后按enter键?@ThijsW打开.m文件时我希望脚本运行我需要它,因为我在C程序的末尾创建了这个m文件,然后从C打开它,所以最好在打开它之后,自动运行并显示图形。(所以用户可以很容易地看到这个图,并且不需要运行它。)我想要的是:当单击该.m文件时(我的意思是当我打开.m文件时),matlab运行它。所以用户无需点击RUN。请看这篇文章,它可以与我的建议结合使用。现在在我的程序中,用户不要点击m文件。C#程序打开m文件。我想可能有一个简单的方法,比如在m文件中编写一个代码,使它在打开后立即运行。但似乎不是这样。非常感谢你的努力。如果我的名声允许的话,我愿意投票支持你的答案!
matlab -r m