2

現在、MATLAB でテイラー多項式とともに関数をプロットしようとしていますが、少し問題が発生しています。次のスクリプトを実行しようとすると、最初のプロットとその凡例は一致しますが、何らかの理由で 2 番目のプロットとその凡例は線と一致しません。MATLAB は初めてで、MATLAB 2012b を使用しています。

スクリプトは次のとおりです。

% First Graph: This graph is correct
x = 0:.01:3;
f = sqrt(x);
P1 = 1 + 0.5*(x - 1);
P4 = 1 + (1/2)*(x - 1) - (1/4)*(1/2)*(x - 1).^2 ... 
     + (3/8)*(1/6)*(x - 1).^3  - (15/16)*(1/24)*(x - 1).^4;
plot(x, f, '-k', x, P1, ':r', x, P4, '--b');
xlabel('x');
ylabel('y');
legend('y = sqrt(x)', 'y = P_1(x)', 'y = P_4(x)', 'Location', 'NorthWest');


% Second Graph: This graph is NOT correct
y = -4:.01:4;
g = exp(cos(y));
P1 = exp(1);
P3 = exp(1) - (exp(1)/2)*y.^2;
figure(2);
plot(y, g, '-k', y, P1, ':r', y, P3, '--b');
xlabel('x');
ylabel('y');
legend('y = exp[cos(x)]', 'y = P_1(x)', 'y = P_3(x)', 'Location', 'South');
4

1 に答える 1

2

赤い線が実線で表示されるのが面白い。いずれにせよ、スカラーに対してベクトルをプロットすることに関連しています。

これにより、等しい長さのベクトルがプロットされ、期待どおりの動作が生成されます。

plot(y, g, '-k', y, P1*ones(1,length(y)), ':r', y, P3, '--b');
于 2013-08-25T06:48:27.487 に答える