I want show population on plot like 36M, 37M....

 Risposta accettata

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 Commenti

You are close to the solution. Please help me. I have one variable, which is the total population, and it is estimated at P_0 = 36,408,820 million. Using an equation, I want to predict the population after 50 years.
That sounds like a different question compared to asking how to label plots?
thank you bro
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.

Accedi per commentare.

Più risposte (1)

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)))

Categorie

Prodotti

Release

R2024a

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by