I have 2 values of population say 30000 for 2001 and 50000 for 2011, I want the population values for all the years between 2001 to 2011 following the trend of population rise from 2001 to 2011
Afficher commentaires plus anciens
do I use the extrapolation technique for this? If so how?
Réponse acceptée
Plus de réponses (1)
Image Analyst
le 12 Oct 2013
I hope this isn't homework - I'm assuming you're honest when you didn't apply the "homework" tag. Here is a solution using polyfit. Don't be scared - it's really only 3 lines - most of the code is just to make a fancy graph.
order = 1; % Whatever...
years = [2001, 2011];
population = [30000, 50000];
% Main part of the code is the next 3 lines:
coefficients = polyfit(years, population, order);
fittedYears = 2001 : 1 : 2011; % Years you want to estimate.
estimatedPopulation = polyval(coefficients, fittedYears)
% Now plot
fontSize = 20;
plot(fittedYears, estimatedPopulation, 'rs-', 'LineWidth', 2);
hold on;
plot(years, population, 'bo', ...
'MarkerSize', 15, 'LineWidth', 3); % Training set.
grid on;
xlabel('Year', 'FontSize', fontSize);
ylabel('Population', 'FontSize', fontSize);
title('Demo by ImageAnalyst', 'FontSize', fontSize);
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0 0 1 1]);
% Give a name to the title bar.
set(gcf, 'Name', 'Demo by ImageAnalyst', 'NumberTitle', 'Off')
1 commentaire
SOURANGSU
le 14 Oct 2013
Catégories
En savoir plus sur Image Arithmetic dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!