Arrays 用MATLAB从txt文件中的表格数据设置数组
基本上,我在一个文本文件中有这样的数据:Arrays 用MATLAB从txt文件中的表格数据设置数组,arrays,matlab,file-io,plot,surf,Arrays,Matlab,File Io,Plot,Surf,基本上,我在一个文本文件中有这样的数据: 100 5 10 20 someval someval 200 6 20 12 someval someval 300 7 30 13 someval someval 前3个标记将用作(x,y,z)坐标,而第四个数字将用于创建颜色以使用surf(x,y,x,c)函数。我也希望能够在行中存储其他值。尝试使用TEXTSCAN功能: fid = fopen('file.txt','rt'); A = textscan(fid, '%f %f %f %d %s
100 5 10 20 someval someval
200 6 20 12 someval someval
300 7 30 13 someval someval
前3个标记将用作(x,y,z)坐标,而第四个数字将用于创建颜色以使用surf(x,y,x,c)函数。我也希望能够在行中存储其他值。尝试使用TEXTSCAN功能:
fid = fopen('file.txt','rt');
A = textscan(fid, '%f %f %f %d %s %s', 'Delimiter',' ');
fclose(fid);
XYZ = [A{1:3}]
clr = A{4}
valsStr = [A{5:6}]
结果是:
XYZ =
100 5 10
200 6 20
300 7 30
clr =
20
12
13
valsStr =
'someval' 'someval'
'someval' 'someval'
'someval' 'someval'
在哪里
尝试使用TEXTSCAN功能:
fid = fopen('file.txt','rt');
A = textscan(fid, '%f %f %f %d %s %s', 'Delimiter',' ');
fclose(fid);
XYZ = [A{1:3}]
clr = A{4}
valsStr = [A{5:6}]
结果是:
XYZ =
100 5 10
200 6 20
300 7 30
clr =
20
12
13
valsStr =
'someval' 'someval'
'someval' 'someval'
'someval' 'someval'
在哪里
如果您只需要做一次,并且您正在使用matlab和GUI,那么您可以只使用File->import data,这对于表格格式非常明智
但是,如果需要重复执行此操作,或者将其作为程序的一部分,则可以调用命令行版本importdata 如果您只需要执行一次,并且您正在使用matlab和GUI,那么您可以使用File->import data,这对于表格格式非常明智
但是,如果需要重复执行此操作,或者将其作为程序的一部分,则可以调用命令行版本importdata 感谢提示,这只是为了显示数据,所以更简单。@seljuq70如果只是为了显示,没有什么比使用GUI导入数据更简单。感谢提示,这只是为了显示数据,所以更简单。@seljuq70如果只是为了显示,没有什么比使用GUI导入数据更简单。