loading file stored as string and then plotting data from file
1 次查看(过去 30 天)
显示 更早的评论
I am attempting to create a script which asks the user for the filename of a txt file whose contents will later be plotted.
filename = input('What is the filename (without the extension) e.g. RCP6: ','s');
if isempty(filename)
filename=input('What is the filename (without the extension) e.g. RCP6: ','s');
end
ext = input('What is the filetype (extension) e.g. .txt: ','s');
if isempty(ext)
ext=input('What is the filetype (extension) e.g. .txt: ','s');
end
filew = strcat(filename,ext)
load(filew)
A = filename
Y = A(:,1)
E = A(:,2)
plot(Y,E)
xlabel('calendar year')
ylabel('annual fossil carbon emissions (GtC)')
As written, the code correctly concatenates filename and ext, however, it does not appear that load (filew) correctly loads that file, since given a filename = RCP3PD for example, Y = R and E = C, instead of Y storing the first column of values from RCP3PD.txt, and E storing the second column?
Any Suggestions? I have seen other "load file from string" threads make reference to the sprintf() function - would that apply here? Perhaps having the user point to a particular directory would be a better approach?
0 个评论
采纳的回答
per isakson
2012-8-9
I propose you replace
load(filew)
A = filename
by
A = load( filew );
.
That makes the code easier to read and understand - I think.
0 个评论
更多回答(1 个)
Sriram
2012-8-9
Yeah your code would give you as R and C....! If you are trying to access the content of the file you shd write as
Y = filew(:,1) % as you have loaded the file "filew"
What you have done would provide the first character of your filname ..And also check with the load command -- i hope it loads only the data files and not any other format...
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Whos 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!