0

これは、並べてプロットしたい2つの関数を使った私の試みでした:

numgraphs = 2;
x = 1:5;
y1 = x.^2;
y2 = x.^3;

funcs = cell(y1, y2);

for i=1:numgraphs
    subplot(1,2,i);
    plot(x,funcs(i));
end

しかし、私はこのエラーが発生しました:

Error using plot
Conversion to double from cell is not possible.

私がやろうとしていることは可能ですか?

4

2 に答える 2

4

角かっこを使用したセル インデックスは()、このセルに含まれる関数ではなく、セル配列を返します。

>> x = {1};
>> class(x(1))
ans =
cell

>> class(x{1})
ans =
double

{}索引付けが必要です:

plot(x,funcs{i});

詳細については 、 http://www.mathworks.de/de/help/matlab/matlab_prog/access-data-in-a-cell-array.html を参照してください。

于 2013-10-07T08:44:06.060 に答える