第3章 MATLAB与excel数据连结及绘图
如何将Excel中的数据导入MATLAB并在MATLAB中画出图像
首先Excel必须是office的(WPS的不可以,MATLAB不能识别),在MATLAB中使用命令xlsread读取Excel中的数据到MATLAB里,如下所示:[number,txt,raw]=xlsread(''),此时读取的文件须在MATLAB默认路径下,命令具体用法及参数含义可直接用help命令在MATLAB中查找。
读取的数据界面如下:
1.如何将Excel中的数据导入MATLAB并在MATLAB中画出图像?
首先Excel必须是office的(WPS的不可以,MATLAB不能识别),file-Import Data-在工作路径下找到需要导入的文件(图3)-点击打开(图4)-点击next-点击finish-导入成功-在workspace中看到图5(导入的数据)。
至此数据导入成功。
下面是如何利用该数据绘图:
法一:双击workspace中的data打开如图6,选中要画图的数据如图7(数据范围可以根据需要随便选择),点击上方的plot(data(1:874,1:2),画出图像如图8,并且在工作空间中自动显示画图命令。
法二:直接在工作空间中写画图命令。
图3
图4
图5图6图7图8。
Matlab中使用Excel数据
Matlab中使用Excel資料收藏% Open Excel, add workbook, change active worksheet,% get/put array, save, and close% First open an Excel Server%打開一個Excel操作物件Excel = actxserver('Excel.Application');%使Excel物件可見,即打開Excel視窗,實際應用時設置其為不可見的set(Excel, 'Visible', 1);% Insert a new workbook%創建工作本組物件Workbooks = Excel.Workbooks;%添加一個工作本Workbook = invoke(Workbooks, 'Add');% Make the second sheet active%獲取當前活躍工作本的表單組,一個工作本共有3個表單(sheets)Sheets = Excel.ActiveWorkBook.Sheets;%獲取表單組中的一個表單sheet2 = get(Sheets, 'Item', 2);%啟動該表單invoke(sheet2, 'Activate');% Get a handle to the active sheet%獲取當前活躍表單的控制碼Activesheet = Excel.Activesheet;% Put a MATLAB array into Excel%向表單中寫入資料A = [1 2; 3 4];%設置寫到Excel中的範圍ActivesheetRange = get(Activesheet,'Range','A1:B2');%寫入set(ActivesheetRange, 'Value', A);% Get back a range. It will be a cell array,% since the cell range can% contain different types of data.%讀會資料塊Range = get(Activesheet, 'Range', 'A1:B2');%獲取資料B = Range.value;% Convert to a double matrix. The cell array must contain only scalars.%B現在是符合矩陣,將其轉換成數值矩陣B = reshape([B{:}], size(B));% Now save the workbook%保存檔,可以寫絕對路徑,相對路徑總是保存在我的文件中invoke(Workbook, 'SaveAs', 'myfile.xls');% To avoid saving the workbook and being prompted to do so,% uncomment the following code.% Workbook.Saved = 1;% invoke(Workbook, 'Close');% Quit Excel%退出Excelinvoke(Excel, 'Quit');% End process%結束Excel進程delete(Excel);function UserRange = ExcelRangeCalculate(data,begin)% 計算資料矩陣所佔用的儲存格範圍% UserRange = ExcelRangeCalculate(data,begin) 輸入參數data用來指定要寫入的% 資料矩陣,begin用來指定寫入的初始位置(左上角位置)。
如何将Excel中的数据导入MATLAB并在MATLAB中画出图象
1.如何将Excel中的数据在MATLAB界面下显示出来:
首先Excel必须是office的(WPS的不可以,MATLAB不能识别),在MATLAB中使用命令xlsread读取Excel中的数据到MATLAB里,如下所示:[number,txt,raw]=xlsread('noise.xlsx'),此
时读取的文件须在MATLAB默认路径下,命令具体用法及参数含
义可直接用help命令在MATLAB中查找。
读取的数据界面如下:
2.如何将Excel中的数据导入MATLAB并在MATLAB中画出图像?
首先Excel必须是office的(WPS的不可以,MATLAB不能识
别),file-Import Data-在工作路径下找到需要导入的文件(图3)-点击打开(图4)-点击next-点击finish-导入成功-在workspace中看到图5(导入的数据)。
至此数据导入成功。
下面是如何利用该数据绘图:
法一:双击workspace中的data打开如图6,选中要画图的数据如图7(数据范围可以根据需要随便选择),点击上方的
plot(data(1:874,1:2),画出图像如图8,并且在工作空间中自动显示画图命令。
法二:直接在工作空间中写画图命令。
图3
图4
图5
图6
图7
图8。
如何将Excel中的数据导入MATLAB并在MATLAB中画出图像
1.如何将Excel中的数据在MATLAB界面下显示出来:
首先Excel必须是office的(WPS的不可以,MATLAB不能识别),在MATLAB中使用命令xlsread读取Excel中的数据到MATLAB里,如下所示:[number,txt,raw]=xlsread('noise.xlsx'),此时读取的文件须在MATLAB默认路径下,命令具体用法及参数含义可直接用help命令在MATLAB中查找。
读取的数据界面如下:
2.如何将Excel中的数据导入MATLAB并在MATLAB中画出图像?
首先Excel必须是office的(WPS的不可以,MATLAB不能识别),file-Import Data-在工作路径下找到需要导入的文件(图3)-点击打开
(图4)-点击next-点击finish-导入成功-在workspace中看到图5(导入的数据)。
至此数据导入成功。
下面是如何利用该数据绘图:法一:双击workspace中的data打开如图6,选中要画图的数据如图7(数据范围可以根据需要随便选择),点击上方的plot(data(1:874,1:2),画出图像如图8,并且在工作空间中自动显示画图命令。
法二:直接在工作空间中写画图命令。
图3
图4
图5
图6
图7
图8。
如何将Excel中的数据导入MATLAB并在MATLAB中画出图像
1. 如何将Excel中的数据在MATLA界面下显示出来:首先Excel必须是office 的(WPS勺不可以,MATLA不能识别),在MATLA中使用命令xlsread读取Excel中的数据到MATLA里,如下所示:[number,txt,raw]=xlsread('noise.xlsx'),此时读取的文件须在MATLA默认路径下,命令具体用法及参数含义可直接用help 命令在MATLA中查找。
读取的数据界面如下:[0.2i60][0.24SO][0.2500][0.2520][0.2540][0.2560][0.2580][0.25Q0][0.2620][0. 2640][0. 2660][0.2680][0.2700][0.2720][0.2740][0. 2760][23.6000][ 28][30.4000]125-2000][ 18][19.2000][2L 2000][17. 20Q0][16.SOOO][17.6000][13.6000][11.2000][13.6000][13.2000][ 10][12.4000]2. 如何将Excel中的数据导入MATLA并在MATLA中画出图像?首先Excel必须是office 的(WPS勺不可以,MATLA不能识别),file-Import Data- 在工作路径下找到需要导入的文件(图3)-点击打开(图4)-点击next-点击finish- 导入成功-在workspace中看到图5 (导入的数据)。
至此数据导入成功。
下面是如何利用该数据绘图:法一:双击workspace中的data打开如图6,选中要画图的数据如图7 (数据范围可以根据需要随便选择),点击上方的plot(data(1:874,1:2),画出图像如图8,并且在工作空间中自动显示画图命令。
法二:直接在工作空间中写画图命令。
>> [number, txt raw!=zlsr*ad C noise.xlsz J)riunber 二0.246023. 60000.24SC 2& 00000.2500 30. 40000. 2520 25.20000. 2E40 18. 00000.2560 2000Di 2580 21. 20000.2600 17.20000. 2620 16.30000. 2640 17. 60000. 13. 60000* 26SA 1],20000. 2700 13. SQ00Import Data査找范圉(X):库计算机网貉名称'悸改日期,,noise.rriat2014/3/1S 19:181^gnoisenKlsx2014/3/1& 19:01I HKTIAB ▼> ®文件名曲):iriOL XISX文件类型⑴;Recognized Filww取消 |JJWorkspace圄■鱼1鲂I^Lr Select data ...〒Name *田[甌Value<874x2 double* rrrCommand Window■+* □ ? X>> plol (datadia?^ I. = 2), J DisplayMafte J p J dataCl;874? 1;2)a ? J YDataSource 1/ data(i:B74? 1:2^ ) .f igurt (ecf)九—K —图81 f 4New to MATLAB? Watch thi$ Sdg see 口旳口轧 or read Getting 5t^rt 亡cLNew Parallel D”ktq 因❼Ctirrent F file Edit 0ew Ins-ert lo&ls Desktop Window Help□ U 矗B |輿耳U 物穏摇TO □囲I ■口IXCommaHd Window。
Matlab中使用Excel数据
Matlab中使用Excel数据收藏Problem DescriptionI am trying to control Excel from MATLAB using ActiveX. Are there any ex amples that show how to use the ActiveX automation interface from Excel to do this?Solution:Most of the functionality that you get from ActiveX is dependent on the ob ject model, which the external application implements. Consequently, we a re usually unable tp provide much information about the functions that yo u need to use in the remote application to perform a particular function. We do, however, have an example that shows how to do perform common functions in Excel.We also recommend that you become more familiar with the Excel object model in order to better use Excel's ActiveX automation interface from MA TLAB. You can find more information on this interface by selecting the "Mi crosoft Excel Visual Basic Reference" topic in the Microsoft Excel Help Topi c dialog. This topic area contains a searchable description of Excel method s and properties.The following example demonstrates how to insert MATLAB data into Excel. It also shows how to extract some data from Excel into MATLAB. For mor e information, refer to the individual comments for each code segment.% Open Excel, add workbook, change active worksheet,% get/put array, save, and close% First open an Excel Server%打开一个Excel操作对象Excel = actxserver('Excel.Application');%使Excel对象可见,即打开Excel窗口,实际应用时设置其为不可见的set(Excel, 'Visible', 1);% Insert a new workbook%创建工作本组对象Workbooks = Excel.Workbooks;%添加一个工作本Workbook = invoke(Workbooks, 'Add');% Make the second sheet active%获取当前活跃工作本的表单组,一个工作本共有3个表单(sheets)Sheets = Excel.ActiveWorkBook.Sheets;%获取表单组中的一个表单sheet2 = get(Sheets, 'Item', 2);%激活该表单invoke(sheet2, 'Activate');% Get a handle to the active sheet%获取当前活跃表单的句柄Activesheet = Excel.Activesheet;% Put a MATLAB array into Excel%向表单中写入数据A = [1 2; 3 4];%设置写到Excel中的范围ActivesheetRange = get(Activesheet,'Range','A1:B2');%写入set(ActivesheetRange, 'Value', A);% Get back a range. It will be a cell array,% since the cell range can% contain different types of data.%读会数据块Range = get(Activesheet, 'Range', 'A1:B2');%获取数据B = Range.value;% Convert to a double matrix. The cell array must contain only scalar s.%B现在是符合矩阵,将其转换成数值矩阵B = reshape([B{:}], size(B));% Now save the workbook%保存文件,可以写绝对路径,相对路径总是保存在我的文档中invoke(Workbook, 'SaveAs', 'myfile.xls');% To avoid saving the workbook and being prompted to do so,% uncomment the following code.% Workbook.Saved = 1;% invoke(Workbook, 'Close');% Quit Excel%退出Excelinvoke(Excel, 'Quit');% End process%结束Excel进程delete(Excel);There are several options for connecting MATLAB with Excel. For an examp le that shows how to connect MATLAB with Excel using Excel Link, please refer to the following URL:/support/solutions/data/27338.shtmlFor an example that shows how to connect MATLAB with Excel using DDE, please refer to the following URL:/support/solutions/data/31072.shtmlFor information on how to use the XLSREAD function to read .xls files, ple ase refer to the following URL:/access/helpdesk/help/techdoc/ref/xlsread.shtml。
《金融数量分析 》第3章 MATLAB与Excel文件的数据交换
回到加载宏对话框,接着选择Excel Link2.3 for use with MATLAB 选项,单击“确 定”按钮,如图1所示。
若Excel的左上方出现start matlab、putmatrix、getmatrix、evalstring 等选项,说明 ExcelLink加载成功,如图2所示。
2. data= xlsread(filename, sheet, range)
输入参数: Ø filename:目标文件地址(若文件在MATLAB当前的工作目录中, filename为“文件名”,如果文件不在MATLAB当前的工作目录中, filename为“文件路径\文件名”); Ø sheet:数据表名称,例如Excel默认表名称sheet1; Ø range:数据所在位置,例如A1、B13等。
3.1 案例背景
Excel是一款非常优秀的通用表格软件,在学习、工作与科研中 大量的数据可能都是以Excel表格的方式存储的。Excel在矩阵计算、 数据拟合与优化算法等方面的功能尚不足,Excel与MATLAB相结合 是处理复杂数据问题的有效方法。
如何利用MATLAB强大的数值计算功能处理Excel中的数据,首 要解决的问题就是如何将Excel中的数据导入MATLAB中或将 MATLAB数值计算的结果转存入Excel中。
3. 5.2 smoothts函数
smoothts函数的输入参数input是一个金融时间序列对象或行导向矩阵,其中 金融时间序列对象是MATLAB中由ascii2fts或fints函数所创建的一种对象,行导 向矩阵是指用行表示观测数据集的矩阵,若input是一个行导向矩阵,input的每 一行都是一个单独的观测集。
输出参数: Ø data: 数值数据。
excel和matlab链接
Matlab具有强大的数据计算和处理、图形显示能力;Excel则具有强大的表格处理同时也有强大的数据统计和显示能力。
在科研过程中常会同时使用这两款软件,如果实现Matlab和Excel的链接,可以满足实际要求。
实现Matlab和Excel的混合编程主要有以下几种方法:1、利用Excel Link(最常用方法)Excel Link是一个在Windows环境下实现Excel与Matlab进行链接的插件。
通过连接Excel和Matlab,实现Excel和Matlab的数据共享。
使用Excel Link 时,不脱离Excel环境直接在Excel中调用Matlab函数。
具体可参见Matlab帮助或Excel Link手册。
2、利用Excel生成器(Matlab作COM服务器)COM(通用对象模型)是一组面向对象的技术和工具的集合。
利用Matlab提供的COM生成器,把Matlab的算法程序生成组件,这些组件可作为独立的COM对象被Excel的Visual Basic使用。
具体可参见Matlab COM Builder或者Matlab Builder for Excel工具。
3、利用Active X控制(Matlab作COM客户端)ActiveX是 Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型。
主要利用Matlab中的actxserver函数:actxserver('progid');progid为程序的ActiveX部件的标识符,针对不同的程序有不同的progid。
如actxserver('Excel.Application'),然后可利用invoke函数进行一系列操作。
4、文件导入方法利用xlsread和xlswrite函数读写Excel文件(也可用fopen、fread和fwrite函数),然后进行数据处理操作。
另外,还可以通过菜单File->Import data 方法。
如何将matlab中的数据导入excel的方法
如何将matlab中的数据导入excel的方法
如何将matlab中的数据导入excel的方法
如何将matlab中的数据导入excel的方法:
matlab中的数据导入excel步骤2:然后找到你要存放文件的位置复制绝对路径(致谢文件名的话就会存放在当前目录中),如图以f盘根目录为例)
matlab中的数据导入excel步骤3:然后写xlswrite函数,格式如图,具体格式课参看helpxlswrite,如图
matlab中的数据导入excel步骤4:xlswrite函数前一项是路径,后一项是要输出的矩阵。
matlab中的数据导入excel步骤5:然后点击执行,等待一下,就会在指定位置新建xls文件,打开如图:
matlab中的数据导入excel步骤6:如要竖着输出数据的话,将矩阵转置即可
matlab中的数据导入excel步骤7:在后面可控制输出数据在xls 中的范围,如A:D,2:16等
注意:转置后原来的数据只会被覆盖不会消失
matlab中的数据导入excel步骤8:要读出xls中的文件时可用函数xlsread用法相同。
Matlab导入Excel数据
方法二利、用xlsread命令导入Excel数据:
首先需要将Excel文件保存到当前Matlab路径下-->新建m文件-->输入 data=xlsread(filename,sheet,xlRange),其中filename是Excel文件名,sheet是要导入数据所 在的sheet,xlRange是数据表中的范围。
方法三:利用dir命令导数包含字符串的Excel数据:
使用dir命令读入文件名,再用赋值命令得到所要数据。此时导入的file中不
止有数据,还有其他字符串,比如汉字、日期之类数据的三种方法做一下总结 1.打开Matlab; 2.方法一:利用Matlab自带数据导入工具导入数据,选择导入数据 类型; 3方法二:利用xlsread(filename,sheet,xlRange),命令导入数据,要 求Excel文件在当前文件夹路径下; 4.方法三:若要导入的不止有数据还包括其他的字符串,就用 dir(‘*.xlsx’)命令导入一个结构体,在从结构体中取出想要的部分;
Matlab导入Excel数 据
MATLAB导入EXCEL数据的三种方法:
比如数学建模之类的很多地方都需要将Excel中的数据导入Matlab中进行处理。 这里告诉你三种Matlab导入Excel数据的方式。
在电脑桌面双击Matlab图标,进入Matlab,第一次打开Matlab可能需要一段时间, 请耐心等待。一般来说固态硬盘的要比机械硬盘快很多。
方法一:使用Matlab"数据导入"工具导入Excel数据:
1.点击主页-->在变量工具栏找到"数据导入“ 2.找到要导入数据的Excel表左键点击-->打开
第章MATLAB与excel数据连结及绘图概要
(1)在excel电子表格中输入命令=MLOpen()
(2) 利用excel的宏工具,在宏对话框中输入Matlabinit, 然后单击执行按钮。
(3)按左上按钮"startmatlab"。
1、ExcelLink连接管理函数
(1) Matlabinit 该函数只能在宏子例程中使用。初始化 ExcelLink和启动Matlab进程。只有在 MLAutoStart函数中使用“no”参数,才需要 手动使用Matlabinit来初始化ExcelLink和启 动Matlab进程, 如果使用参数“yes”,则Matlabinit是自动执 行的。 使用语法:Matlabinit
(3) MLAppendMatrix
将Excel工作表中的数据追加到Matlab中指 定的矩阵中如果该矩阵不存在,则创建矩阵。 在工作表中使用的语法: MLAppendMatrix(var_name,mdat)
注意要追加的数据维数要和原矩阵中的维数 相匹配,否则出错
假设matlab中,矩阵a是个2行3 列的矩阵,如下图:
4. xlswrite与xlsread
➢ MATLAB提供的函数xlswrite,具有将 MATLAB中的数据写入EXCEL的功能。
➢ MATLAB提供的函数xlsread,具有将EXCEL 中的数据读入MATLAB的功能。
xlswrite的调用方式
xlswrite('', M) xlswrite('', M, sheet) xlswrite('', M, 'range') xlswrite('', M, sheet, 'range')
matlab处理excel数据
matlab处理excel数据处理单个⽂件matlab读取excel数据有⼀个注意的点就是路径,为⽅便起见可以先将matlab路径设置为要读取的excel⽂件的路径,这样可以不⽤去在函数中在写路径,然后⽤函数来读取,例如:x=xlsread(‘filename’,‘sheet1’,‘B2:B34')filename是你保存的⽂件名,要包括⽂件格式⽐如:'实验数据处理.xlsx'当然⽂件名和路径都可以在⽂件属性⾥进⾏复制粘贴,也不算⿇烦⽐如写⼊路径:x=xlsread(‘d:/test/实验数据处理.xlsx’,‘sheet1’,‘B2:B34')就是读取D盘test⾥⾯保存的’实验数据处理.xlsx‘⽂件中表格1中从B2到B34这⼀列的数据[num,txt,raw]=xlsread('C:\Users\Administrator\Desktop\test\a.xls')%num返回的是excel中的数据,txt输出的是⽂本内容,row输出的是未处理数据%⼀般情况下,我们读取的是excel中的数剧,所以可以直接⽤下⾯的,只输出数据矩阵便可[num]=xlsread('C:\Users\Administrator\Desktop\test\a.xls')处理多个有规律⽂件x=['1.xls' '2.xls' '3.xls'];for i=1:3data=xlsread(x[i]);save('data.mat','data');end可以数字转字符串处理多个⽆规律⽂件可以利⽤dir函数dir函数可以有调⽤⽅式为:dir('.')列出当前⽬录下所有⼦⽂件夹和⽂件dir('G:\Matlab')列出指定⽬录下所有⼦⽂件夹和⽂件dir('*.m')列出当前⽬录下符合正则表达式的⽂件夹和⽂件读取⽂件夹中全部图像:src=uigetdir('choose the dir');cd(src);allname=struct2cell(dir('*.jpg'));[k len]=size(allname);for i=1:lenname=allname{1,i};I=imread(name);figure(i);imshow(I);end处理⾮数值数据——⽇期时间数据xlsread函数。
MATLAB与Excel混合编程.
MATLBA 与 Excel 混合编程
Matlab 具有强大的数据计算能力, 但是对于对一些常见的统计图形的显示, 例如棒图,饼图,折线图等, Excel 的显示能力质量很高,且易于控制。
Excel link是一个软件插件,它可以将 Excel 和 Matlab 进行集成。
使用 Excel Link 时,不必脱离 Excel 环境, 而直接在 Excel 的工作区域, 或者宏操作中调用 Matlab 的函数。
Excel 提供了11个函数来实现链接和数据操作。
因此,通过 Excel link这个中介, Excel 成为Matlab 的一个易于使用的数据存储和应用开发前端,它是一个功能强大的计算和图形处理器。
(一 Excel Link的安装
平台:matlab 2009b, office 2007,Excel Link无需安装, 在 matlab2009b 中已有图示步骤:
点击确定后,找到此宏的目录在 matlab 安装文件目录\toolbox\exlink\excllink2007.xlam 最后出现:
(二 Excel Link的函数及其应用
表一:Excel Link的连接管理函数
表二:Excel Link 数据管理函数
具体应用可以看看 MATLAB 的 help 文件,里面都有 (三应用举例1.
并且会动态更新的 2.。
如何将Excel中的数据导入MATLAB并在MATLAB中画出图像
1.如何将Excel中的数据在MATLAB界面下显示出来:
首先Excel必须就是office的(WPS的不可以,MATLAB不能识别),在MATLAB中使用命令xlsread读取Excel中的数据到MATLAB里,如下所示:[number,txt,raw]=xlsread('noise、xlsx'),此时读取的文件须在MATLAB默认路径下,命令具体用法及参数含义可直接用help命令在MATLAB中查找。
读取的数据界面如下:
2.如何将Excel中的数据导入MATLAB并在MATLAB中画出图像?
首先Excel必须就是office的(WPS的不可以,MATLAB不能识别), Data-在工作路径下找到需要导入的文件(图3)-点击打开(图4)-点击next-点击finish-导入成功-在workspace中瞧到图5(导入的数据)。
至
此数据导入成功。
下面就是如何利用该数据绘图:
法一:双击workspace中的data打开如图6,选中要画图的数据如图7(数据范围可以根据需要随便选择),点击上方的plot(data(1:874,1:2),画出图像如图8,并且在工作空间中自动显示画图命令。
法二:直接在工作空间中写画图命令。
图3
图4 图5
图6
图7
图8。
第3章 MATLAB与excel数据连结及绘图
plot(mydate,sp08(:,3),'y-*',mydate,sp08(:,3),'m-.')
E-mail :xiaohuipk@
第3章 MATLAB与Excel数据连 接及绘图
3.1 MATLAB与Excel数据连接 3.1.1 MATLAB和Excel的接口安装:. Excel Link的安
装和和设置 Excel Link的设置
启动Excel,选择菜单“工具”项下的“加载宏” 项,弹出如下对话框
(3)横坐标是时间,纵坐标是价格,画出其收 盘价的时间图
答案见ex3_2_3.m
含多个输入参数的plot函数
调 用格式为: plot(x1,y1,x2,y2,…,xn,yn) (1)当输入参数都为向量时,x1和y1,x2和y2,…,
xn和yn分别组成一组向量对,每一组向量对的长度 可以不同。 (2) 当输入参数有矩阵形式时,配对的x,y按对应列元素 为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列 数。
具有两个纵坐标标度的图形
调用格式为: plotyy(x1,y1,x2,y2) 其中x1,y1对应一条曲线,x2,y2对应另一条
曲线。横坐标的标度相同,纵坐标有两个, 左纵坐标用于x1,y1数据对,右纵坐标用于 x2,y2数据对。
例3.2.5 用不同标度在同一坐标内 绘制曲线y1=0.2e-0.5xcos(4πx) 和y2=2e-0.5xcos(πx)。
(3) MLClose
终止Matlab进程并删除Matlab工作空间的所 有变量。并通知Excel,Matlab不再运行。 在工作表中的使用语法: MLClose() 在宏中的使用语法: MLClose
Excel时间与Matlab的转换
EXCEL和matlab 使用技巧
如图 3.5 所示的设置(设置分类字段、汇总方式、汇总项) 单击“确定” 按钮。
这时工作表左边就会出现
3 个分级符号,其中后一级别为前一级
别提供细节数据。用户可以使用分级显示符号,显示和隐藏细节数据,如图
3.6 所示,总的汇总行属于级别 1,各专业的汇总数据属于级别 2,学生的细 节数据行则属于级别 3。
图 3.3 创建图表实验
卡 修改标题为“公管专业学生成绩图表” 单击“确定”按钮。
(5)向图表中添加数据
选择添加的数据区域 F2:F7 使用“复制”命令 选中图表 使用“粘贴”命令。
如果要删除图表上的数据系列,不删除工作表中对应数据,则可以单击要删除的数据系列,再按
Delete 键。
(6)在图表中添加文字
拖动鼠标至 G15。 说明:不应该输入:=97+86+67,它虽然在 G2 中数值没有错,但不能利用填充功能。 后面有关求平均分、等级、语数均及格的操作类似于求总和操作,所以只给出公式。 (2)四舍五入求平均分 在 H2 中输入公式并填充,公式为:=ROUND(AVERAGE(D2:F2),1) (3)求等级 在 I2 中输入公式并填充,公式为:=IF(H2>=85, "优",IF(H2>=60, "合格","不合格")) (4)求语数均及格 在 J2 中输入公式并填充,公式为:=IF(AND(D2>=60,E2>=60), "合格","不合格") (5)求最高平均分、最低平均分和平均分高于 75 分的人数 分别在 B17 至 B19 中输入公式:=MAX(H2:H15)、=MIN(H2:H15)、=COUNTIF(H2:H15,">=75") (6)把“学号”、“姓名”和“平均分”的内容复制到“表 1” 选择需要的三列相关内容 使用 Ctrl+C 将它们复制到剪贴板 单击“表 1”中的 A1 单元格 使用
Matlab+Excel+link使用介绍
如果在宏过程中使用MLGetMatrix函数,需要添加MatlabRequest命令,在函数中则不需。 数据类型 ExcelLink只处理matlab二纬数值数组、一纬字符数组和二纬单元格数组,不能使用多维数组和结构数组。 日期 Excel和Matlab采用不同的日期计数标准,如果Excel使用的是1900基准,则传入Matlab的日期需要加上常
将回归系数和自变量相乘获得回归拟合结果:
下一步生成排序后的原始y值和拟合值fit::
继续使用多项式拟合的方法获得5阶多项式的值和多项式拟合值:
使用案例:数据插值 给定一组原始数据:时间、温度和数量,现根据新给出的时间和温度值,通过插值方法求得对应的数量值。 执行过程分为5步:将原始数据包括标签传给matlab,matlab建立三个向量和一个单元格数组(标签字符),继续使 用MLPutMatrix传入插值数据点Xa和Ta,第三步使用matlab内置函数griddata产生插值数据,第四步使 用MLGetMatrix获得矩阵数据并写入工作表单元格F7开始的区域。最后生成曲面图。
/blog/static/2821955220070163253842/[2010/12/8 11:22:05]
Matlab Excel link使用介绍 - qqintao的日志 - 网易博客
使用案例:期权计算 本例使用二叉树模型计算资产价格树和期权价格树,给定期权计算所需基本信息,而后将数据传给matlab、执 行matlab金融工具包中用于计算二叉树模型的函数binprice,最后将结果数据写入excel工作表的指定命令区域。 首先是基本信息数据,B4:B10,区域命名为bindata,使用命令=mlputmatrix("b", bindata)将数据传给matlab数组b。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设置曲线样式
plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2…)
将按顺序分别画出由三参数定Xi,Yi,LineSpeci 的线条。
其中参数LineSpeci指明了线条的类型,标记 符号,和画线用的颜色。
例3.2.8 采用不同颜色、不同线形以及不同标记 在同一图形中画出y=cos(x),y=sin(x/2)exp{x/100}和y=sin(x-)的图像
1、ExcelLink连接管理函数
(1) Matlabinit 该函数只能在宏子例程中使用。初始化 ExcelLink和启动Matlab进程。只有在 MLAutoStart函数中使用“no”参数,才需要 手动使用Matlabinit来初始化ExcelLink和启 动Matlab进程, 如果使用参数“yes”,则Matlabinit是自动执 行的。 使用语法:Matlabinit
答案见ex3_2_5.m
例3.2.6画出S&P从2008年1月到 2008年10.20收盘价及其对数收 益率的时间图。
答案见ex3_2_6.m
图形保持
hold on/off命令控制是保持原有图形还是刷 新原有图形,不带参数的hold命令在两种状 态之间进行切换。
例3.2.7 采用图形保持,在同一坐标内绘制 曲线y1=0.2e-0.5xcos(4πx) 和y2=2e0.5xcos(πx)。 答案见ex3_2_7.m
金融数值计算与应用软件
--MATLAB
王辉 中央财经大学金融学院
E-mail :xiaohuipk@
第3章 MATLAB与Excel数据连 接及绘图
3.1 MATLAB与Excel数据连接 3.1.1 MATLAB和Excel的接口安装:. Excel Link的安
装和和设置 Excel Link的设置
(3)横坐标是时间,纵坐标是价格,画出其收 盘价的时间图
答案见ex3_2_3.m
含多个输入参数的plot函数
调 用格式为: plot(x1,y1,x2,y2,…,xn,yn) (1)当输入参数都为向量时,x1和y1,x2和y2,…,
xn和yn分别组成一组向量对,每一组向量对的长度 可以不同。 (2) 当输入参数有矩阵形式时,配对的x,y按对应列元素 为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列 数。
在原来程序的基础上
plot(mydate,sp08(:,3),'y-*',mydate,sp08(:,3),'m-.')
如果用户使用MATLAB中的日期数计算, 常数 693960起关键作用: EXCEL日期数加上它进 入MATLAB,或从MATLAB 日期数中减去它进 入EXCEL
2、ExcelLink数据管理函数
(1) matlabfcn 根据给定的Excel数据执行Matlab命令。 在工作表中使用时的语法: matlabfcn(command, inputs)
(3) MLClose
终止Matlab进程并删除Matlab工作空间的所 有变量。并通知Excel,Matlab不再运行。 在工作表中的使用语法: MLClose() 在宏中进程
如果Matlab进程已经启动,则MLOpen函数不 进行任何操作。在使用MLClose关闭Matlab 进程后使用MLOpen来重新启动Matlab。 在工作表中的使用语法: MLOpen() 在宏中的使用语法: MLOpen
4. xlswrite与xlsread
➢ MATLAB提供的函数xlswrite,具有将 MATLAB中的数据写入EXCEL的功能。
➢ MATLAB提供的函数xlsread,具有将EXCEL 中的数据读入MATLAB的功能。
xlswrite的调用方式
xlswrite('filename', M) xlswrite('filename', M, sheet) xlswrite('filename', M, 'range') xlswrite('filename', M, sheet, 'range')
xlswrite的输入参数
filename % EXCEL文件名
M
% MATLAB工作空间中的大小为m×n的数
组,该数组可以是字符型的,数值型的也可以是单元
数组,其中m < 65536且n < 256
sheet % EXCEL中的工作簿
range % EXCEL工作簿中的数据区域
例如:将一个向量写入EXCEL文件v.xls,在MATLAB中 执行如下命令:xlswrite('v', [1 5 -8 3.9 0])
(3) MLAppendMatrix
将Excel工作表中的数据追加到Matlab中指 定的矩阵中如果该矩阵不存在,则创建矩阵。 在工作表中使用的语法: MLAppendMatrix(var_name,mdat)
注意要追加的数据维数要和原矩阵中的维数 相匹配,否则出错
假设matlab中,矩阵a是个2行3 列的矩阵,如下图:
启动Excel,选择菜单“工具”项下的“加载宏” 项,弹出如下对话框
若该项不存在,则通过浏览目录,在目录 MATLAB/toolbox/exlink下找到 excllink.xla文件
在Excel中多了一个Excel Link工 具条,如下图示:
3.1.2 . ExcelLink管理函数 手动启动matlab
要不想在每次启动时都启动matlab,则可以在电子表 格中或函数输入框中输入以下命令 =MLAutoStart(“no”)
手动启动matlab
(1)在excel电子表格中输入命令=MLOpen()
(2) 利用excel的宏工具,在宏对话框中输入Matlabinit, 然后单击执行按钮。
(3)按左上按钮"startmatlab"。
具有两个纵坐标标度的图形
调用格式为: plotyy(x1,y1,x2,y2) 其中x1,y1对应一条曲线,x2,y2对应另一条
曲线。横坐标的标度相同,纵坐标有两个, 左纵坐标用于x1,y1数据对,右纵坐标用于 x2,y2数据对。
例3.2.5 用不同标度在同一坐标内 绘制曲线y1=0.2e-0.5xcos(4πx) 和y2=2e-0.5xcos(πx)。
'range')
xlsread的输入与输出参数
输入参数:
filename % EXCEL文件名
sheet % EXCEL中的工作簿名
range % EXCEL工作簿中的数据区域
输出参数:
num %读入Excel文件数据
txt
%保存文本内容
例 3.1.2 将m.xls复制到matlab当 前工作目录下,并在matlab命令窗 口输入以下命令:
例3.1.1 把元胞数组d = {'Time', 'Temp'; 12 98; 13 99; 14 97}写入到 EXCEL文件m.xls的一个规定的工作簿 当中。
答案见ex3_1_1.m
xlsread的调用方式
num = xlsread(filename) num = xlsread(filename, -1) num = xlsread(filename, sheet) num = xlsread(filename, 'range') num = xlsread(filename, sheet, 'range') [num, txt] = xlsread(filename, sheet,
3、当输入参数是复数矩阵时,则按列分别以元素实部和 虚部为横、纵坐标绘制多条曲线。
例3.2.3 画出S&P从2008年1月到 2008年10.20开盘价、最高价、 最低价和收盘价的时间图。
(1)横坐标是观测个数,纵坐标是价格,将四种 价格画在一幅图中
(2)横坐标是时间,纵坐标是价格,将四种价 格画在一幅图中
plot(x,y) 其中x和y为长度相同的向量,分别用于存储x坐标和y
坐标数据。
二维绘图的例子
例3.2.1 在0≤x≤2区间内,绘制曲线 y=2e-0.5xcos(4πx)
答案见ex3_2_1.m
例3.2.2 假如你的帐户中有一笔10年的 $1000存款,年利率为r,那么10年后你的 钱数与利率的关系是,画出该函数的图像。
(2) MLAutoStart
设置自动启动Matlab和ExcelLink。 在工作表中的使用语法: MLAutoStart("yes") MLAutoStart("no") 使用“yes”参数,则当Excel启动时,自动启 动Matlab和ExcelLink;如果使用参数 “no”,则当Excel启动时,不启动Matlab和 ExcelLink。如果在此之前它们已经启动,则 无任何影响。
例3.2.4 分析下列程序绘制的曲线。
x1=linspace(0,2*pi,100); x2=linspace(0,3*pi,100); x3=linspace(0,4*pi,100); y1=sin(x1); y2=1+sin(x2); y3=2+sin(x3); x=[x1;x2;x3]'; y=[y1;y2;y3]'; plot(x,y,x1,y1-1)
答案见ex3_1_2.m
3.2 MATLAB绘图 3.2.1 二维数据曲线图
1、绘制单根二维曲线 plot函数最简单的调用格式是只包含一个输入参数:
plot(x) 在这种情况下,当x是实向量时,以该向量元素的下标
为横坐标,元素值为纵坐标画出一条连续曲线,这 实际上是绘制折线图。 plot函数的基本调用格式为: