2016-10-02 5 views
0

So versuche ich die Durchschnittsdaten zu berechnen und anzuzeigen, wie in dem beigefügten Bild beschrieben (http://i.stack.imgur.com/b2DHd.png) Hier ist, was ich habe:MATLAB - Anzeigen von Daten

lakeData = load('C:\Users\Justin\Desktop\EGR2222\MATLAB\Data\LAKE_POWELL.txt'); 

year1= lakeData(:,1); 
year2= lakeData (:,2); 
year3= lakeData (:, 3); 
year4= lakeData (:, 4); 
year5= lakeData (:, 5); 
year6= lakeData (:,6); 
year7= lakeData (:,7); 
year8= lakeData (:,8); 

lakePowell = [year1, year2, year3, year4, year5, year6, year7, year8]; 
years = [2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007]; 
average = mean(lakePowell) 

fprintf('The average water level was %s in %s\n', average, years) 

Mein Problem ist, dass ich bin neu in MATLAB und Ich bin mir nicht sicher, wie ich meine fprintf-Anweisung richtig codiere, damit sie alle Daten gleichzeitig ausgibt. Bitte helfen Sie!

Antwort

0

Sie möchten wahrscheinlich alle Werte in average und alle Werte in years durchlaufen und ausdrucken.

Auch werden Sie %f und %d für die Formate verwenden möchten, da sie Zahlen sind.

for k = 1:numel(years) 
    fprintf('The average water level was %f in %d\n', average(k), years(k)) 
end 

wäre eine weitere Option sein average und years entlang der ersten Dimension verketten und dann können Sie fprintf einmal anrufen.

combined = cat(1, average(:).', years(:).'); 
fprintf('The average water level was %f in %d\n', combined);