0
我試圖填充水平線和曲線之間的區域。我遵循this中的說明。 2條曲線是在Matlab中填充函數2017不起作用
代碼我使用以生成所述圖形是
alpha = [0:0.01:1];
mu = 1;
V = [0:0.01:10];
Lambda1 = 2;
y2 = (1./(mu-alpha*Lambda1)+2*alpha*Lambda1./((mu-alpha*Lambda1).^2)).*(alpha<=0.3)+max(V).*(alpha>0.3);
f0 = max(V).*ones(1,length(alpha));
A = [alpha,fliplr(alpha)];
Y1 = [f0,fliplr(y2)];
figure
h1 = fill(A,Y1,'k'),axis([0 1 0 11]),
set(h1, 'FaceAlpha', 0.1)
的想法是,alpha
是運行變量,即,橫軸。藍色曲線是一個分段函數,即在alpha=0.3
之前,它是一個四元函數,在alpha=0.3
之後,它保持爲10.基本上,我想要有0<=alpha<=0.3
的陰影區域。
我以爲我的上面的代碼可以工作,因爲我想我明白fill
函數是如何工作的。 fill(x,y,'r')
中的x,y
是代表2D空間中共享邊界座標的2個向量。
我不知道爲什麼在我的情況下,它不工作...
非常感謝你!我原來並沒有意識到這一點。我知道我的'y2'的第一部分在'alpha = 0.5'處具有奇點。但我認爲這不應該是一個問題,因爲我有一個指示器函數'(alpha <= 0.3)'。現在顯然matlab不按我想的那樣進行計算。我現在瞭解它。 –