2016-12-09 2 views
1

私は区分定義された関数があります:私は私のコードでそれをlogplotログプロット区分

y1 = 10^3 * (x/470) .^ (-5); % for x<470 

y2 = 10^3 * (x/470) .^ (-3.3); % for x>=470 

enter image description here

I:

x=logspace(0,5); 
y1=10^3*(x/470).^(-5); 
y2=10^3*(x/470).^(-3.3); 
loglog(x,y1); 
hold on 
loglog(x,y2); 
grid on 

が、私はこのプロットを取得しますその数値にのみy1をピース単位でプロットしてください470とそれからプロットされた別の関数 fplotに制限を設定できることは知っていますが、ここでどうすればいいですか?

答えて

2

ジャスト機能の各部分ごとに異なるxベクトル定義:

x1=linspace(0,470); 
x2=linspace(470,1e5); 
y1=10^3*(x1/470).^(-5); 
y2=10^3*(x2/470).^(-3.3); 
loglog(x1,y1); 
hold on 
loglog(x2,y2); 
grid on 
+0

感謝を。私はログプロットのためにlinspaceの代わりにlogspaceを使用しなければならないと思った! – jdoubleu

+0

関数がx = 10^0 = 1に対して定義されていない理由を知っていますか?ここに画面があります:http://www.bilder-upload.eu/upload/5842db-1481315293.jpg – jdoubleu

+1

これは 'x'のスペースだけです。あなたはまだ 'logspace'を使用する可能性がありますが、ログ値470を計算する必要がありますが、それはログに記録された間隔の値ではないかもしれません。 – mpaskov

関連する問題