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引擎已关闭")

相关推荐
吃好睡好便好8 小时前
在Matlab中绘制阶梯图
开发语言·人工智能·学习·算法·机器学习·matlab
Deep-w8 小时前
【MATLAB】基于 MATLAB 的离网光伏储能微电网容量优化仿真研究
开发语言·算法·matlab
Deep-w9 小时前
【MATLAB】基于MATLAB的图像加密传输平台【GUI+源码+项目说明】
开发语言·matlab·密码学
Evand J9 小时前
【MATLAB集群控制导航7】多无人机三维编队轨迹规划仿真。RRT*+Catmull-Rom路径平滑+Frenet 编队保持。附MATLAB代码链接
开发语言·matlab·无人机
Evand J10 小时前
【课题推荐与代码介绍】卡尔曼滤波器正反向估计算法原理与MATLAB实现
开发语言·算法·matlab
简简单单做算法12 小时前
改进遗传优化的BP神经网络一维时间序列预测算法matlab仿真
matlab·bp神经网络·遗传优化·一维时间序列预测
m0_7488394913 小时前
利用C 图形界面展示MATLAB算法的高效混合编程实践
开发语言·算法·matlab
Evand J1 天前
【课题推荐】强跟踪UKF算法,三维非线性状态量和观测量,附MATLAB代码测试结果
开发语言·算法·matlab
茗创科技1 天前
Nat Hum Behav | 特征选择会导致基于脑影像的机器学习生物标志物产生迥异的神经生物学解释
python·深度学习·机器学习·matlab·脑网络
Evand J1 天前
【课题推荐】三模型IMM交互式多模型滤波算法,匀速/左转/右转目标跟踪,附MATLAB代码测试结果
算法·matlab·目标跟踪·无人机·imm·多模型