matlab文件的导入导出

合集下载

matlab文件和数据的导入与导出

matlab文件和数据的导入与导出
13
gjy_just@
x = 0:.1:1; y = [x; exp(x)]; Fid = fopen('exp.txt','w+'); fprintf(Fid,'%6.2f %12.8f\n',y); fclose(Fid); Fid=fopen('exp.txt', 'r+'); %B=fread(Fid, [2,11],'long'); B=fscanf(Fid,'%f',[2,11]); fclose(Fid);
gjy_just@
8
precision 用于控制所读数据的精度格式。 缺省格式为uchar,即无符号字符格式。 例如:Fid=fopen('std.dat', 'r'); A=fread(Fid, [10,10], 'long'); fclose(Fid); A以读数据方式打开数据文件std.dat,并按长 整型数据格式读取文件的前100个数据放入 向量A,然后关闭文件。
gjy_just@
5
2、 fclose关闭文件 文件在进行完读、写等操作后,应及时 关闭,以保证文件的安全可靠。关闭文件 命令格式为: Sta=fclose(Fid) 关闭Fid所表示的文件 Sta表示关闭文件操作的返回代码,若关 闭成功,返回0,否则返回–1。
gjy_just@
江苏科技大学数理学院文件和数据的导入与导出gjyjustyahoocomcn11文件的打开与关闭matlab提供了对数据文件建立打开读写以及关闭等一系列函数数据文件一般存放在磁盘等介质上用文件名标识系统对文件名没有特殊要求
文件和数据的导入与导出

MATLAB文件和数据的导入与导出

MATLAB文件和数据的导入与导出

练习:1画出曲面图:)(22y x e x z --⨯=,其中x 在[-2,2]等切分21个点,y 在[-1,1]等切分21个点。

2、三维曲线:,126622-++++=y x y xy x z ,1010,1010<<-<<-y x文件和数据的导入与导出1、 文件的打开、保存和关闭(1) 打开文件不同类型文件后缀名不同,如filename.m, filename.mat(数据文件), filename.pdf(pdf 文件), filename.fig(图形文件)。

使用格式:open('filename'): %打开文件filename 。

打开当前路径上的文件,可以直接用open 函数打开,例如: open 学位论文评议书.pdf 或open('学位论文评议书.pdf') 如果文件不在当前路径上,打开它需要指定路径名,例如: open('D:\temp\data.mat')(2)关闭文件status=fclose(fid) :%关闭打开的文件fid ,成功则返回0,否则返回-1。

status=fclose('all')关闭所有的已经打开的文件,成功则返回0,否则返回-1。

2、本机数据文件(1)文件的存储在命令窗口输入>>save这个命令将工作区中的变量存储在matlab.mat中,也可以使用命令:>>save var1 var2…%将var1,var2…保存为名为matlab.mat中。

>>save filename var1 var2…%将var1,var2…保存为名为filename.mat中。

(2)文件的打开使用命令:>>load %可以调用第一个matlab.mat中的所有变量。

>>load filename %filename.mat被打开,其中的变量被载入工作区>>load filename var1 var2 % %filename.mat被打开,其中的变量var1 var2被载入工作区可以使用file 中的Import Data 可以查看.mat文件。

MATLAB的数据导入与导出

MATLAB的数据导入与导出

MATLAB的数据导⼊与导出1 数据导⼊:%% ⾼层次读取数据。

importdata 函数是⼀个⾼层次的函数filename = 'weeklydata.txt';delimiterIn =''; %delimiter: n. 定界符。

将 delimiterIn 解释为 ASCII ⽂件、⽂件名或剪贴板数据中的列分隔符。

headerlinesIn = 1; % 从 lineheaderlinesIn+1开始读取数字数据。

A=importdata(filename,delimiterIn,headerlinesIn);% 开始预览数据for k =[1:7]disp(A.colheaders{1,k}) %展⽰每⼀列的题头disp(A.data(:,k)) %每⼀列的所有⾏disp('')end结果:Matlab低级别的⽂件 I/O:%% Matlab低级别的⽂件 I/Ofilename = 'myfile.txt';% myfile.txt保存在⼯作⽬录中。

此⽂件存放三个⽉的降⾬资料: 2012年6⽉,7⽉和8⽉降⾬量。

% myfile.txt中的数据在五个地⽅包含重复的时间,⽉份和降⾬量测量。

标题数据存储⽉数M; 所以有M个集合测量值。

rows = 7cols = 5%使⽤ fopen 函数打开⽂件并获得⽂件标识符。

fid = fopen(filename);%读取⽂件头,找到 M (⽉份数)% 使⽤格式说明符描述⽂件中的数据,例如字符串的%s,整数%d或浮点数%f。

% 要跳过⽂件中的⽂字,需将其包含在格式说明中。

要跳过数据字段,在说明符中使⽤星号(*)M=fscanf(fid,'%*s %*s\n %*s %*s %*s %*s\n M=%d',1); %要读取头⽂件,并返回单个的M值%读取 each set of measurementsfor n= 1:M% 默认情况下,fscanf会根据格式描述读取数据,直到找不到数据的匹配,或到达⽂件的末尾。

matlab程序设计文件和数据的导入导出

matlab程序设计文件和数据的导入导出

第十章
图形处理
与数值计算和符号计算相比,图形的可视化技术是数 学计算人员所追求的更高级的一种技术,图形处理技术 则给人们提供了一种更直接的表达方式,可以使人们更 直接、更清楚的了解实物的结果和本质。本章主要介绍 MATLAB的图形处理功能,包括基本的绘图指令、图形的 简单控制和图形窗口的编辑等。
图形处理
5 使用坐标轴标签,图例和文本对图形进 行注释
6 输出打印
图形处理
(二) 绘制二维曲线图 如果将X轴和Y轴的数据分别保存在两个向量中,同 时向量的长度完全相等,那么可以直接调用函数进行二 维图形的绘制。 plot(y) y是实向量,以该向量原始的下标为横坐标,元素值为 纵坐标画出一条连续曲线 y是实矩阵,按列绘制每列元素值相对其下标的曲线,图 中曲线数等于y阵列数。
图形处理
函数
annotation
功能描述
创建线、箭头、文本箭头、双箭头、文本框、 矩形和椭圆
Xlabel,ylabel,zlabel
title
给相应的坐标轴增添标签
给图形增添标题
colorbar
legend
给图形增添颜色条
给图形增添图例
图形处理
1.图题标注 title(‘text’):命令将内容增加到当前图形的顶边部分; 2.坐标轴的标签:用于解释各坐标轴的单位信息。 xlabel(‘text’):命令将text增加到当前x轴的旁边; ylabel(‘text’):命令将text增加到当前y轴的旁边; zlabel(‘text’):命令将text增加到当前z轴的旁边; 3.文本标注 text(x,y,‘string’):在坐标(x,y)的位置上添加文本标注 string.
图形处理
(六) 对数比例坐标轴和双Y轴 当进行数理统计能操作时,习惯使用对数坐标系来绘 制图形。 loglog:对X轴和Y轴均采用对数坐标。 semilogx:对X轴采用对数坐标。 semilogy:对Y轴采用对数坐标。 在进行数值比较时,会遇到必须使用双纵坐标的情况, 函数plotyy绘制的图形左右两端都有显示Y坐标轴。

Matlab数据的导入与导出PPT课件

Matlab数据的导入与导出PPT课件

2020/11/2020/11/1
数据的导入与导出
【例2.1-1】利用数据导入向导读取文件examp02_01.txt至 examp02_11.txt中的数据 数据文件略去……
2020/11/1
二、调用高级函数读取数据
1. 调用importdata函数读取数据 调用格式: importdata() A = importdata() A = importdata() A = importdata() [A D] = importdata(…) [A D H] = importdata(…) […] = importdata(‘-pastespecial’, …)
低级函数
函数名 说 明
fopen
打开文件,获取打开文件的 信息
fclose 关掉一个或多个打开的文件
fgets fgetl fscanf textscan
读取文件中的下一行,包括 换行符 调用 fgets 函数,读取文件中 的下一行,不包括换行符 按指定格式从文本文件中读 取数据 按指定格式从文本文件或字 符串中读取数据
2020/11/1
4. 调用textread函数读取数据 调用格式: [A,B,C,…] = textread('','format') [A,B,C,…] = textread('','format',N) […] = textread(…,'param','value',…)
数据的导入与导出
2020/11/1
高级函数 函数名 load importdata dlmread csvread textread strread
说明 从文本文件导入数据到 MATLAB 工 作空间 从文本文件或特殊格式二进制文件 (如图片,avi 视频等)读取数据 从文本文件中读取数据

Matlab文件和数据的导入与导出

Matlab文件和数据的导入与导出

MATLAB中导入数据通常由函数load实现,该函数的用法如下:
2014年8月31日7时46分
回到章节目录
5
MATLAB中,另一个导入数据的常用函数为importdata,该 函数的用法如下: ● importdata(‘filename’),将filename中的数据导入到工作区中 ● A = importdata(‘filename’),将filename中的数据导入到工作区 中,并保存为变量A; ● importdata(‘filename’,‘delimiter’),将filename中的数据导入到 工作区中,以delimiter指定的符号作为分隔符; 例 从文件中导入数据。 >> imported_data = importdata('matlab.mat') imported_data = ans: [1.1813 1.0928 1.6534] A: [2x3 double] I_q: [415x552x3 uint8] num_of_cluster: 3 与load函数不同,importdata将文件中的数据以结构体的方 式导入到工作区中。 回到章节目录
2014年8月31日7时46分 回到章节目录 3
例如: a = [1 2 3; 4 5 6; 7 8 9]; b=[2 3 4]'; save 'c:\tst.txt ' a -ascii
则将a保存在c盘中的tst.txt文件中,文件内容:
1.0000000e+000 2.0000000e+000 3.0000000e+000 4.0000000e+000 5.0000000e+000 6.0000000e+000 7.0000000e+000 8.0000000e+000 9.0000000e+000

MATLAB里面的数据导入与导出

MATLAB里面的数据导入与导出

MATLAB⾥⾯的数据导⼊与导出
-、导⼊数据
上⾯这张图,我们可以看到导⼊数据这⼀项,点击导⼊数据
上⾯是我从我电脑⾥⾯随便选的的⼀个excel⽂件,然后点击选择就成。

后⾯我们就进⼊了新的页⾯
这⾥我们需要注意的是选择输出类型,由于我们后⾯需要对矩阵内的数据进⾏运算,所以我们选择了数值矩阵,然后点击导⼊所选内容
在这⾥我们在⼯作区会发现⼀个example2,就是我们导⼊的数据。

后⾯我们就可以进⾏数据操作了。

⼆、写⼊数据
这是将数据写⼊txt⽂件内的代码。

这是将数据写⼊excel⽂件中的代码,注意,这个a.xls⽂件是可以先不新建的,它会⾃⼰新建,除此以外,我们必须明⽩的是,我们写代码的时候example和example2⽂件的数据类型不⼀样,如果不加注意的话,我们后⾯可能导⼊不进去数据,如我们将example的⽂件写⼊a.xlsx⽂件中就会出问题。

然后我们注意⼀下xlswrite和writetable两个的区别就好了,⼀个是写⼊excel⽂件,⼀个是写⼊⽂本中。

相关的语法直接help就成。

这个是导⼊数据之后的excel⽂件,在左边的当前⽂件夹可见。

matlab文件的导入导出

matlab文件的导入导出

在编写一个程序时,经常需要从外部读入数据,或者将程序运行的结果保存为文件。

MATLAB使用多种格式打开和保存数据。

本章将要介绍MATLAB中文件的读写和数据的导入导出。

13.1 数据基本操作本节介绍基本的数据操作,包括工作区的保存、导入和文件打开。

13.1.1 文件的存储MATLAB支持工作区的保存。

用户可以将工作区或工作区中的变量以文件的形式保存,以备在需要时再次导入。

保存工作区可以通过菜单进行,也可以通过命令窗口进行。

1. 保存整个工作区选择File菜单中的Save Wo rkspace As…命令,或者单击工作区浏览器工具栏中的Save,可以将工作区中的变量保存为MAT文件。

2. 保存工作区中的变量在工作区浏览器中,右击需要保存的变量名,选择Save As…,将该变量保存为MAT文件。

3. 利用save命令保存该命令可以保存工作区,或工作区中任何指定文件。

该命令的调用格式如下:● save:将工作区中的所有变量保存在当前工作区中的文件中,文件名为matlab.mat,MAT文件可以通过load函数再次导入工作区,MAT函数可以被不同的机器导入,甚至可以通过其他的程序调用。

● save('filename'):将工作区中的所有变量保存为文件,文件名由filename指定。

如果filename中包含路径,则将文件保存在相应目录下,否则默认路径为当前路径。

● save('filename', 'var1', 'var2', ...):保存指定的变量在filename 指定的文件中。

● save('filename', '-struct', 's'):保存结构体s中全部域作为单独的变量。

● save('filename', '-struct', 's', 'f1', 'f2', ...):保存结构体s中的指定变量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
详细可参考FDTD算法的相关文献。
gprmax.m的使用例子:
fileout = 'bre1.out';
[Header,Fields]=gprmax(fileout);
N=1:Header.NSteps; %移动次数
Position=Header.dx*Header.tx+(N-1)*(Header.dx*Header.TxStepX); %天线每次所在位置
#domain: 1.0 1.5
表示1.0*1.5的大小范围
#dx_dy:
表示x和y轴上的偏移量(如△x、△y)
#dx_dy: f1 f2
表示x轴偏移f1和y轴方向上偏移f2
#domain: 1.0 1.5
#dx_dy: 0.1 0.1
则模型的单元数为10*15
#domain: 1.0 1.5
#dx_dy: 0.01 0.01
GprMaxV2.0下载地址:/Download.html
说明:翻译得不好,还望大家见谅,因为我也是边看边译的。
3.1 GprMax2D命令的一般注意事项
为了描述GprMax2D/3D命令及其参数,我们作以下约定:
f表示浮点数(如1.5或15e-1、1.5e1)
Header.nrx:
Header.nrx_box:
Header.tx=0.0875/Header.dx=35;
Header.ty=0.4525/Header.dy=181;
Header.source=’MyLineSource’;
Header.delay=0;(等于#tx:命令的第四个参数)
Header.removed=12e-9;(等于#tx:命令的第五个参数)
则模型的单元数为100*150
最大允许时间步△t与△x、△y的约束关系如下:
(3.1)
C为光速,GprMax2D中计算△t使用3.1式等号。
#time step stability factor:
通过该命令,你可以修改GprMax2D所计算的△t的值,但必须满足3.1式的要求。
#time_window:
例子:如输入文件*.in中定义:
#domain: 2.5 0.65
#dx_dy: 0.0025 0.0025
#time_window: 12e-9
……
#analysis: 115 bre1.out b
#tx: 0.0875 0.4525 MyLineSource 0.0 12e-9
#rx: 0.1125 0.4525
i表示整数
c表示字符
str表示字符串
file表示输入文件名
所有空间距离的基本单位为米
所有时间的基本单位为秒
所有频率参数的基本单位是Hz
3.2 GprMax2D 2.0版本共有32条命令:
#title:
#domain:
#dx_dy:
#time_step_stability_factor:
#time_window:
ylabel('y(m)');
2.2 gprmax.m的使用方法
gprmax函数用于读取GprMax2D与GprMax3D软件仿真探地雷达模型生成的二进制波形数据。
gprmax函数的原型:
[Header, Fields] = gprmax( 'filename' )
filename是.out文件名;
header.nx=2.5/0.0025=1000; header.ny=0.65/0.0025=260;
mesh: 存储模型数据,M x N的数组,其中M为Y轴方向的Yee单元数目,N为X轴方向的Yee单元数目;M=header.nx,N=header.ny;
gprmax2g.m的使用例子:
filegeo = 'bre1.geo';
GprMaxV2.0中GprMax2D输入文件的命令(1/2)
原创
修改人
修改时间
版本
微风无尘
微风无尘
2012.3.9
V1.1
实验环境:
操作系统:Windows 7
软件版本:MATLAB 7.1 & GprMaxV2.0
参考文献:
GprMaxV2.0软件manual文件夹下的UserGuideV2.pdf。
#pml_layers:
#box:
#cylinder:
#x_segment:
#y_segment:
#triangle:
#analysis:
#end_analysis:
#tx:
#rx:
#rx_box:
#snapshot:
#tx_steps:
#rx_steps:
#line_source:
#excitation_file:
#messages:
#number_of_media:
#nips_number:
#media_file:
#geometry_file:
#medium:
#abc_type:
#abc_order:
#abc_stability_factors:
#abc_optimization_angles:
#abc_mixing_parameters:
至少一个#tx:与#rx:,或者#rx_box:命令
• 为了使#tx: 命令正确运行,同时需要一行新的#line_source:命令
3.3.1一般命令
#title:
模型的题目
#title: str
Str即是模型的题目,必须是单行的。
#domain:
模型的范围(单位:米)
#domain: f1 f2
f1与f2分别代表x和y轴上的量度大小
1)Header:该变量包括以下成员:
Header.title: 模型的名称;
Header.iterations: 迭代次数;
Header.dx: 在X轴每次偏移大小;
Header.dy: 在Y轴每次偏移大小;
Header.dt: 最大允许时间步长;
Header.NSteps: 仿真次数;等于*.in文件中#analysis:命令的第一个参数;
ABC相关命令: 允许定制和优化吸收边界条件
介质和对象的构造命令: 用不同的参数来在模型中引入不同的介质和构造简单的几何形状
激励和输出命令:用来放置源代码和模型的输出点
运行GprMax2D最低限度的命令如下:
•#domain:
•#dx_dy:
•#time_window:
•至少一个#analysis:及与其对应的结束命令#end_analysis:
header: 存储模型的几何参数;
header.title: 模型的名称;
header.dx: 模型在X轴每次偏移大小(单位:m);
header.dy: 模型在Y轴每次偏移大小(单位:m);
header.dt: 最大允许时间步长(单位:秒);
header.nx: 模型在X轴的偏移次数;
header.ny: 模型在Y轴的偏移次数;
#tx_steps: 0.02 0.0
#rx_steps: 0.02 0.0
#end_analysis:
……
那么,Header.iterations=ceil(Header.removed/Header.dt);
Header.dx=0.0025;Header.dy=0.0025;
Header.dt= 1/(c*sqrt(1/Header.dx^2+1/Header.dy^2));
例子:如输入文件*.in中定义:
#domain: 2.5 0.65
#dx_dy: 0.0025 0.0025
那么:header.dx=0.0025; header.dy=0.0025;
header.dt = 1/(c*sqrt(1/header.dx^2+1/header.dy^2)); (其中c=299792458,为光速,公式参考[1]);
Header.NSteps=115;
Header.TxStepX=0.02/Header.dx=8; Header.TxStepY=0.0/Header.dy=0;
Header.RxStepX=0.02/Header.dx=8; Header.RxStepY=0.0/Header.dy=0;
Header.ntx:
[meshdata,header,media]=gprmax2g((meshdata);
imagesc((1:NN)*header.dx,(1:MM)*header.dy,meshdata)
axis('equal');
xlabel('x(m)');
用于指定所需的总的模拟时间。语法:
#time_window: f1
或者
#time_window: i1
总的迭代次数和模拟时间窗口: (3.2)
#number_of_media:
但你需要使用大于10个介质时必须使用该命令,因为GprMax2D只初始化了10个介质的使用空间。
#number_of_media: i1
2.1 gprmax2g.m的使用方法
gprmax2g函数用于读取GprMax2D软件仿真探地雷达模型生成的二进制几何数据。
gprmax2g函数的原型:
[mesh,header,media] = gprmax2g( 'filename' )
filename是.geo文件名;
media: 存储介质类型,media.type;
使用该命令,你可以控制软件运行时在屏幕上的输出信息。
#messages:c1
相关文档
最新文档