I want show population on plot like 36M, 37M....
2 views (last 30 days)
Show older comments
please help me, I=I need the grow population like 36m, 37, 38,.. on plot
0 Comments
Accepted Answer
John D'Errico
on 17 Jun 2024
Edited: John D'Errico
on 17 Jun 2024
You want the plot to plot each point as a string like 36M, 38M, etc?
Why not just divide by 1e6, then use the axis label to indicate millions?
P = [3.6e7, 3.8e7, 4.1e7, 4.5e7, 5.0e7]; % just making up some numbers
t = 1970:10:2010;
plot(t,P/1e6,'-o')
xlabel Years
ylabel 'Population in Millions'
Could you plot the points as text strings? Well, yes. Easily enough, using the function text. But seriously, why?
4 Comments
John D'Errico
on 18 Jun 2024
You are now asking a completely different question. But that is also clearly a homework assignment, and I last had any desire to do homework at least 35 years ago. Probably longer than that, but I'm not going to count.
So look at your class notes. Read your text. Think about how you would formulate an exponential growth model.
More Answers (1)
Walter Roberson
on 18 Jun 2024
Moved: Walter Roberson
on 18 Jun 2024
Alternate solution:
P = [3.6e7, 3.8e7, 4.1e7, 4.5e7, 5.0e7]; % just making up some numbers
t = 1970:10:2010;
ax = gca;
plot(ax, t,P,'-o')
xlabel(ax, 'Years')
ylabel(ax, 'Population in Millions')
yticklabels(ax, compose("%gM", floor(ax.YTick/1e6)))
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!