Matlab读取excel数据,并绘图生成exe可执行文件

最近,接了个任务,大致意思是这样的:

将excel里面的三列数据(分别代表各自不同的意思),导入到excel,然后利用这些数据画图,最终要生成一个exe文件,并且可以跑在没有安装Matlab的机子上。


以上只是一部分数据,后面还有几百行,大概两百多行数据项。


完成以上任务,我们可以分步骤完成,首先在Matlab里将导入数据,绘图的工作完成。

<span style="font-size:14px;">speed_eff=xlsread('E:\project\2.xlsx','sheet1','A2:A1000');
torque_eff=xlsread('E:\project\2.xlsx','sheet1','B2:B1000');
efficiency_eff=xlsread('E:\project\2.xlsx','sheet1','C2:C1000');
value_eff=[80,81,82,83,84,85,86.5,87,87.5,88,88.5,90,90.5,91,91.5,92,92.5,93,93.5];
[SPEED,TORQUE]=meshgrid(0:10:4000,0:10:1000);
EFFICIENCY=griddata(speed_eff,torque_eff,efficiency_eff,SPEED,TORQUE,'linear');
[c,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);
clabel(c,h,value_eff);
</span>
上面的三行,只是将数据导入,参数分别是路径、第几个表单、真正的data从第几行到第几行

然后下面的就是绘图了,具体要看你 绘图的函数实现,不细讲。

之后,就是生成exe可执行文件了,我们回顾一下这个任务,会发现,简略版的界面只要一个选择excel文件的按钮,然后自动绘图即可。

下面就开始讲解过程:

1.打开Matlab,选择菜单栏的第一个File选项->New->GUI,然后在弹出的框中选择,新建一个图形界面,然后将push按钮和绘图按钮拖进去,之后更改push按钮的名称,双击弹出属性框改名,即可





2.在按钮上右击,选择editor,设置一个函数名,之后编辑函数。因为这里要设置一下触发函数,也就是点击之后可以选择文件,继而将文件导入进去进行下面的操作

在弹出的函数中找到按钮的回调函数,只更改这部分代码。



3.具体在我的这个任务中,更改的代码如下,具体情况可以根据绘图函数的不同进行相应更改。

<span style="font-size:14px;">
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

[FileName,PathName] = uigetfile('*.xlsx','Select the Data file');
file = fullfile(PathName,FileName);
% data = load(file);
axes(handles.axes1);
speed_eff=xlsread(file,'sheet1','A2:A1000');
torque_eff=xlsread(file,'sheet1','B2:B1000');
efficiency_eff=xlsread(file,'sheet1','C2:C1000');
value_eff=[80,81,82,83,84,85,86.5,87,87.5,88,88.5,90,90.5,91,91.5,92,92.5,93,93.5];
[SPEED,TORQUE]=meshgrid(0:10:4000,0:10:1000);
EFFICIENCY=griddata(speed_eff,torque_eff,efficiency_eff,SPEED,TORQUE,'linear');
[c,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);
clabel(c,h,value_eff);
clear;</span>

4.点击运行,执行看一下是否有错误,基本没有拼写错误基本都可以顺利通过。

5.生成可执行文件: 在命令行中输入: mcc -m 文件名.m

之后就可以在当前目录下产生一个exe文件,现在就算不运行matlab,就可以执行了。但是还有一个问题,该程序不能在其他机子上跑,原因是其他机子没有安装MCR(Matlab的运行环境)。

具体解决方案是:

在装有Matlab的机器中找到MCR安装文件,目录是 <matlab path> \toolbox\compiler\deploy\win32,将里面的Install文件拷贝出来,安装在未安装Matlab的机子上,直接可以打开,下一步下一步,就不解释了。最后一步是将“MCRinstaller.exe安装目录\runtime\win32”这个路径添加到该计算机的环境变量中。添加方法就是右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。


至此,就大功告成了! 如有遇到问题,欢迎提问。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值