MATLAB包的安装、导入和退出

在Python中启动MATLAB引擎,必须首先为Python包安装引擎API。MATLAB提供一个标准的Python安装文件setup.py来创建和安装该引擎。使用同样的setup.py命令,可以在Windows, Mac或Linux系统上安装该引擎。

安装MATLAB包,要求MATLAB版本R2014b以上,需要将包含Python解释器的目录添加到路径中。在MATLAB命令窗口键入matlabroot,复制matlabroot返回的路径。

在Windows系统上,以管理员模式打开PowerShell命令提示符窗口,进入到setup.py所在目录,然后输入下面的语句执行安装。

cd "matlabroot\extern\engines\python"

python setup.py install

其中,matlabroot为MATLAB的安装路径。注意上面斜杠的方向是不同的。

安装完成后,就可以开始使用该引擎。在Python IDLE Shell窗口输入下面的语句,导入MATLAB引擎。

code.python
>>> import matlab.engine

继续输入下面的语句启动引擎。

code.python
>>> eng=matlab.engine.start_matlab()

可以运行多个引擎。

code.python
>>> eng1=matlab.engine.start_matlab()
>>> eng2=matlab.engine.start_matlab()

处理完成后,调用exit或quit函数退出。

code.python
>>> eng.quit()

如果退出Python时,引擎仍然运行,Python会自动停止引擎和它的MATLAB进程。

启动MATLAB引擎时可以指定一些启动选项,在启动引擎时实现一些其他的效果。例如,下面启动带桌面窗口的MATLAB。

code.python
>>> eng=matlab.engine.start_matlab("-desktop")

可以在一个字符串中定义多个启动选项。例如,下面启动桌面并将数值显示格式设置为短整型。

code.python
>>> eng=matlab.engine.start_matlab("-desktop -r 'format short'")

也可以在启动引擎以后启动桌面。

code.python
>>> import matlab.engine
>>> eng=matlab.engine.start_matlab()
>>> eng.desktop(nargout=0)

可以异步启动引擎。MATLAB启动以后,在Python命令行输入以下命令。

code.python
>>> import matlab.engine
>>> future=matlab.engine.start_matlab(async=True)

创建MATLAB的实例,这样就可以在MATLAB中进行计算。

code.python
>>> eng=future.result()