How to plot 2 columns (one is population the other is years) in a linear graph

139 views (last 30 days)
I have an excel file with 2 columns. I want to plot the data in a simple linear graph. The problem lies with the years. I keep getting the error message:"Error using plot. When table is the second input, the first input must be a valid parent."
My code is as follows:
Population = readtable('Population.xls');
% figure_1
figure
plot(years,Population,'kx-')
xlabel ('Year','FontSize',16,'FontWeight','bold','Color','b')
ylabel ('Population (Billions)','FontSize',16,'FontWeight','bold','Color','b')
title ('Linear Growth','FontSize',20,'Color')
  4 Comments
Dyuman Joshi
Dyuman Joshi on 4 Feb 2023
It is tought to tell from such limited code. Can you post or upload your code?
And please copy-paste the full error message.
Voss
Voss on 4 Feb 2023
That's because you say 'Color' but you don't supply a color
title ('Linear Growth','FontSize',20,'Color')
% ^ missing color
e.g.,
title ('Linear Growth','FontSize',20,'Color','g')

Sign in to comment.

Answers (1)

Star Strider
Star Strider on 4 Feb 2023
This is difficult without the Excel file.
Taking a wild guess:
plot(Population.years, Population.Population)
alternatively:
plot(Population{:,1}, Population{:,2})
The second is more likely to be successful.
Note the curly brackets {} to do the table addressing.
.
  5 Comments
Star Strider
Star Strider on 4 Feb 2023
Sure!
T1 = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1284645/Population.xls');
Lv = T1{:,1} <= 2015; % Years Up To & Including 2015
figure
plot(T1{Lv,1}, T1{Lv,2}, 'kx-')
grid
xlabel ('Year','FontSize',16,'FontWeight','bold','Color','b')
ylabel ('Population (Billions)','FontSize',16,'FontWeight','bold','Color','b')
title ('Linear Growth','FontSize',20,'Color','g')
.

Sign in to comment.

Categories

Find more on Line Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!