您的位置首页百科知识

MATLAB读取txt文件和绘图

MATLAB读取txt文件和绘图

的有关信息介绍如下:

MATLAB读取txt文件和绘图

MATLAB提供的fopen,textscan命令可以用来读取文本文件(如xx.txt文件)。本文分享MATLAB读取txt文件的方法,并根据读取的数据绘制图形。

第一,准备数据。新建文本文档,命名为test20171010.txt,并在文本文档中输入下图数据,然后保存,作为MATLAB读取txt文件的数据。

第二,启动MATLAB,新建脚本(Ctrl+N),输入如下代码:

close all; clear all; clc

fileID=fopen('test20171010.txt');

C=textscan(fileID,'%s %s %f %s %d %u %f %f %s %f');

fclose(fileID);

format compact

celldisp(C)

其中%s %s %f %s %d %u %f %f %s %f(共计10个%),依次对应文本文档test20171010.txt中10列数据,%s读取空白或字符串,%f读取浮点型数据,%d和%u读取整型数据。

format compact是使命令行窗口输出的数据行距紧凑。

第三,保存和运行上述脚本,在命令行窗口得到如下结果,C为1*10元胞数组,里面包含了test20171010.txt的全部数据。

C{1}{1} =

2017/10/1

C{1}{2} =

2017/10/2

C{1}{3} =

2017/10/3

C{2}{1} =

temperature1

C{2}{2} =

temperature2

C{2}{3} =

temperature3

C{3} =

22.3500

24.1500

35.9000

C{4}{1} =

r-humidity1

C{4}{2} =

r-humidity2

C{4}{3} =

r-humidity3

C{5} =

45

50

35

C{6} =

123000

9000000

200000

C{7} =

Inf

-Inf

10

C{8} =

NaN

0.0010

100.0000

C{9}{1} =

Yes

C{9}{2} =

NO

C{9}{3} =

NO

C{10} =

5.1000 + 3.0000i

2.2000 - 0.5000i

3.1000 + 0.1000i

第四,读取test20171010.txt的数据后,在工作区(Workplace)中可以看到元胞数组C。下面绘制test20171010.txt中温度(第3列)和相对湿度(第5列)的图像,接着输入如下代码:

x=1:3;

[hAxes,hBar,hLine]=plotyy(x,C{3},x,C{5},'bar','plot')

set(hLine,'color','r','LineWidth',2,'Marker','o')

其中plotyy为绘制双坐标轴图形的命令,这样可以把温度绘制成柱状图(bar),把相对湿度绘制成线图(plot)。

第五,保存和运行上述脚本,得到如下图形,柱状图表示温度,线图表示相对湿度,相应的数据是MATLAB读取文本文档test20171010.txt得来的。