Matlabで以下の等式をプロットする方法。 この式には2つの要因があります。特定の2つの入力要素の式をプロットする
kは(-1,1)のスカラー数です。
x値を指定すると、double値(-infinity、+ infinity)が与えられます。
私はこの機能のグラフィックをプロットする必要があります。
if x>0 plot (1-k)x
else (case x<=0) plot(1+k)x
Matlabで以下の等式をプロットする方法。 この式には2つの要因があります。特定の2つの入力要素の式をプロットする
kは(-1,1)のスカラー数です。
x値を指定すると、double値(-infinity、+ infinity)が与えられます。
私はこの機能のグラフィックをプロットする必要があります。
if x>0 plot (1-k)x
else (case x<=0) plot(1+k)x
希望これは
k = 3 - randi(3); %random number between -1-0-1 (thanks op)
x = -1e6:1e6; %a very long vecot
y = zeros(1,length(x)); %prelocate y
ind = find(x); %find the indeces where x>0
y(ind) = (1- k) * x(ind);
ind = find (x<=0);
y(ind) = (1+k) * x(ind);
plot(x,y);%plot
あなたのバージョンを[-1,1]の浮動小数点値に使用していますが、非常にうまく動作しません。なぜなら、あなたは2x2のansベクトルを作成し、それを使ってエラーになるからです。私が整数状態をシミュレートしたい場合、この場合k = { - 1,0,1}、私はrandi(3)-2を使用しています。私を助けてくれてありがとう! ANS = 0.5315 -0.4685 -0.4685 0.5315 >>(RAND *( - 1))^(ランディ(1,2)) – Igoto
を助け、私は無名関数が好き - 読みやすさを向上させることができます。
f = @(x,k) (1-k).*x.*(x>0) + (1+k).*x.*(x<=0)
plot(x,f(x,k))
(x> 0)と(x < = 0)を使用して異なるケースを処理することに注意してください。
私はMATLABでプロットするようにコードを使用してもらえますか?私は@を使用してこのフォームを知っていない、それはパラメトリックな方法ですか? – Igoto
https://se.mathworks.com/help/matlab/matlab_prog/anonymous-functions.html – vindarmagnus
はいできます。最初にxとkを定義するだけです。 – vindarmagnus
[matlabで3分岐機能のグラフを作成する方法](http://stackoverflow.com/questions/30790802/how-to-make-a-graph-of-a-three-ブランチ関数in-matlab) –