Error using fplot: Warning: Error updating FunctionLine.

3 Ansichten (letzte 30 Tage)
MatlabBeginner
MatlabBeginner am 21 Feb. 2018
Bearbeitet: Walter Roberson am 4 Apr. 2020
Hi everyone,
I would like to plot the following function:
function ax_max = maxax(ay,v)
if (v <=130/3.6)
ax_max(ay <= 0.8) = -3.5;
ax_max(ay > 0.8 & ay <= 4.5) = -307/74 + 30/37*ay;
ax_max(ay > 4.5) = 0;
else
ax_max(ay < 0.5) = -2.5;
ax_max(ay >= 0.5 & ay <= 2.5) = -25/8 + 5/4*ay;
ax_max(ay > 2.5) = 0;
end
ax_max=abs(ax_max);
end
by using
fplot(@(ay) -maxax(ay, sqrt(30*ay)), [0 5])
I would like to create four subplots varying the number "30" fplot (30, 123, 400, 900). The fplot function works wenn using "900", but with for example "30"I just get an empty plot and the following warning:
"Warning: Error updatin Function Line. The following error was reported evaluating the function in FunctionLine update: In an assignment A(:) = B, the number of elements in A and B must be the same."
Thank you for your help!

Antworten (2)

HUXIN GAO
HUXIN GAO am 28 Okt. 2018
Hello! Recently I have encountered the same problem. Have you solved it? if done, could share it with me. Thanks very much!
  2 Kommentare
madhan ravi
madhan ravi am 28 Okt. 2018
Ask a question separately @ Huxin with all the necessary details
Anurag Agarwal
Anurag Agarwal am 4 Apr. 2020
@Huxin Gao, did you get the solution? If yes, please share it.
Thank you

Melden Sie sich an, um zu kommentieren.


Walter Roberson
Walter Roberson am 4 Apr. 2020
Bearbeitet: Walter Roberson am 4 Apr. 2020
V = [30, 123, 400, 900];
nV = length(V);
for K = 1 : nV
subplot(1,nV,K)
fplot(@(ay) -maxax(ay, sqrt(V(K)*ay)), [0 5]);
title(sprintf('V = %f', V(K)));
end

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by