找到一行中的元素总和并将它们放在列向量中

时间:2015-05-12 21:51:50

标签: matlab plot

M = round(csvread('noob.csv'))

save projectDAT.dat M -ascii
load projectDAT.dat


mat = (projectDAT)
rowws(mat)

这是我的主要脚本。我有一个excel文件,它在matlab中打开一个20 x 20的矩阵。现在我必须在这个主题中调用一个函数,它将为我找到一行中的元素总和并将它们放在一个列向量中。这是我的功能:

function sumRow = sum_of_rows(mat)
[m n] = size(mat);

sumRow = zeros(m,1);
for i = 1:m;
    for j = 1:n;
        sumRow(i) = sumRow(i) + mat(i,j);
    end
end
vec = sumRow;
end

我需要使用此列向量绘制折线图。我应该从主语中调用一个函数。该函数应该能够从sum_of_rows函数中获取输入。我试过这样做:

function plotthegraph(~)

% Application for plotting the height of students
choice = menu('Choose the type of graph', 'Plot the data using a line plot',     'Plot the data using a bar plot');
if choice == 1
   plot_line(sum_of_rows) 
y = sum_of_rows
x = 1:length(y)
plot(x,y)
title('Bar graph')
xlabel('Number of characters')
ylabel('Number of grades')

elseif choice == 2
   plot_bar(sum_of_columns)
end

虽然没有成功。有人可以帮帮我,我真的很感激。 谢谢。

1 个答案:

答案 0 :(得分:0)

您是否考虑过使用内置和函数?我想

mysum = sum(mat,2)

会做到这一点。