07、python调用matlab引擎

import matlab.engine

import numpy as np

import matplotlib.pyplot as plt

启动MATLAB引擎

eng = matlab.engine.start_matlab()

print("MATLAB引擎启动成功")

定义Python数据

t = np.linspace(0, 2*np.pi, 100)

y = np.sin(t)

将NumPy数组转换为MATLAB数组

t_mat = matlab.double(t.tolist())

y_mat = matlab.double(y.tolist())

在MATLAB中执行命令

eng.workspace['t'] = t_mat # 将变量传递到MATLAB工作区

eng.workspace['y'] = y_mat

eng.eval("plot(t, y)", nargout=0) # 绘制图形

eng.eval("title('正弦函数')", nargout=0)

eng.eval("xlabel('时间'); ylabel('幅度')", nargout=0)

执行MATLAB函数并获取结果

result = eng.sqrt(4.0) # 调用sqrt函数

print(f"sqrt(4.0) = {result}")

调用自定义MATLAB函数

假设当前目录下有个名为myfunc.m的文件

result = eng.myfunc(arg1, arg2)

关闭引擎

eng.quit()

print("MATLAB引擎已关闭")

相关推荐
电力程序小学童18 小时前
IEEE5节点系统潮流仿真模型(simulink+matlab全功能模型)
matlab·毕设·仿真·simulink·5节点系统·ieee 5·三相仿真模型
我爱C编程21 小时前
基于强化学习的5G通信网络基站资源动态分配策略matlab性能仿真
5g·matlab·强化学习·基站资源动态分配
kaikaile19952 天前
matlab基于图像的人员计数
人工智能·计算机视觉·matlab
zzc9213 天前
不同程度多径效应影响下的无线通信网络电磁信号仿真数据生成程序
网络·matlab·数据集·无线信道·无线通信网络拓扑推理·多径效应
XuX033 天前
MATLAB 山脊图绘制全解析:从数据生成到可视化进阶
matlab·科研·绘图
我爱C编程3 天前
基于Stackelberg博弈论的频谱共享调度算法matlab仿真,对比Bertrand博弈论
matlab·stackelberg博弈·bertrand博弈·频谱共享调度
鱼会上树cy4 天前
空间解析几何10:三维圆弧拟合【附MATLAB代码】
开发语言·matlab
机器学习之心5 天前
光伏功率预测 | RF随机森林多变量单步光伏功率预测(Matlab完整源码和数据)
算法·随机森林·matlab·多变量单步光伏功率预测
神仙别闹6 天前
基于 Matlab 和 Truetime 的网络控制系统仿真
网络·matlab·php