How to create plot from the data in .txt file ?

134 views (last 30 days)
Hello All,
I wanted to create a 2D plot of spatial density versus altitude using the data in .txt file, however, when i tried converting first the data into excel format it did not work the best and eventually i could not do the necessary coding to read data from excel file to create the desired MATLAB plot as shown below.
Kindly could anyone let me know, if there is way you could suggest to directly create a 2D plot using the attached .txt file or at least convert them to excel format that can be coded in MATLAB to create the plot?

Accepted Answer

Les Beckham
Les Beckham on 31 Aug 2023
This should get you started. Note that the warnings are expected and can be ignored.
T = readtable('Spatial Density.txt', 'EmptyLineRule', 'skip', 'VariableNamesLine', 1);
Warning: Column headers from the file were modified to make them valid MATLAB identifiers before creating variable names for the table. The original column headers are saved in the VariableDescriptions property.
Set 'VariableNamingRule' to 'preserve' to use the original column headers as table variable names.
% plot some of the data -- modify as desired
plot(T.Altitude, T.Expl_Fragm, T.Altitude, T.Coll_Fragm, T.Altitude, T.Launch_Mis)
grid on
legend(T.Properties.VariableNames, 'Interpreter', 'none')
Warning: Ignoring extra legend entries.
  7 Comments
Rufiya
Rufiya on 3 Sep 2023
Dear Les,
Sorry for the mistake!
Since i earlier changed the name of text document, the above code did not unfortunately recognize the txt file mentioned above in the code and hence caused an error.
The above code which you had given me is correct and generates the desired results.
Many Thanks!

Sign in to comment.

More Answers (1)

Zak
Zak on 31 Aug 2023
Would something like this work? You'll have to modify the plotting part to add the other columns. I'm sure there's some way to name the table variables from the text file, but I didn't quite figure it out yet.
T = readtable('Spatial Density.txt','NumHeaderLines',1);
figure
hold on
plot(T.Var1,T.Var2)
plot(T.Var1,T.Var3)
hold off
xlabel('altitude')
legend('Expl-Fragm','Coll-Fragm')
  4 Comments
Rufiya
Rufiya on 31 Aug 2023
Hello Zak,
I received the below error messages:
Error using readtable
Unable to find or open 'Spatial Density.txt'. Check the path and filename or file permissions.
Error in Test (line 1)
T = readtable('Spatial Density.txt','NumHeaderLines',1);
Walter Roberson
Walter Roberson on 31 Aug 2023
Please show us the output from these MATLAB commands:
pwd
ls Spat*
ls *.txt

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!