我是 MATLAB 的新手,所以我什至不知道这是否可行,但在这里...... 我正在尝试使用 plot 函数在单个图形中打印多行。问题是,我希望能够通过简单地更改一个变量来指定图形应该显示多少行,例如:{这是我想要执行的操作的伪代码}
number_of_lines = 4;
x = 0:0.5:5;
function_output[number_of_lines];
for n=0:number_of_lines
function_output[n] = sin(n + x);
end
for n=0:number_of_lines
plot(x,function_output[n]);
end
我知道上面的伪代码不完全是 MATLAB,但我只想知道这样的算法是否可以在 MATLAB 中完成。
最佳答案
这是在 MATLAB 中实现示例的一种方法:
function_output = zeros(numel(x), number_of_lines); % Initialize a 2-D array
for n = 1:number_of_lines % MATLAB uses 1-based indexing
function_output(:, n) = sin(n + x).'; %' Compute a row vector, transpose
% it into a column vector, and
% place the data in a column of
% the 2-D array
end
plot(x, function_output); % This will plot one line per column of the array
这里有一些文档链接,您应该通读以学习和理解上述代码:
关于arrays - 如何在 MATLAB 的数组中保存多个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4357671/