How do I use for loop to graph this

I'm trying to recreate the graph above using for loop code.
I got the outline done but don't know how to plot the lines inside the curve. The for loop below is incorrect. Could anyone come up with the correct for loop for this?
hold on
plot([1,0,0,1,1],[0,0,1,1,0],'g')
x = 0:0.025:1;
y = (1. - sqrt(x)).^2;
for n=1:40
plot([n/40,0],[0,n/40],k)
end

 Respuesta aceptada

Voss
Voss el 25 de Feb. de 2024
hold on
x = 0:0.025:1;
y = flip(x);
for n=1:numel(x)
plot([x(n),0],[0,y(n)],'k')
end
plot([1,0,0,1,1],[0,0,1,1,0],'g')

5 comentarios

Or without the for loop:
hold on
x = 0:0.025:1;
x(2,:) = 0;
y = flip(flip(x,2),1);
% y = x(end:-1:1,end:-1:1); % alternative to flip(flip(_))
plot(x,y,'k');
plot([1,0,0,1,1],[0,0,1,1,0],'g')
Khoi
Khoi el 25 de Feb. de 2024
Thank you Voss
Voss
Voss el 25 de Feb. de 2024
You're welcome! Any questions, let me know. Otherwise, please "Accept" this answer. Thanks!
Khoi
Khoi el 26 de Feb. de 2024
is there any way for me to keep this line of code and add on to it using for loop?
hold on
plot([1,0,0,1,1],[0,0,1,1,0],'g')
x = 0:0.025:1;
y = (1. - sqrt(x)).^2;
I'm not sure what you mean, but you can plot that x and y after the other stuff, sure.
hold on
x = 0:0.025:1;
y = flip(x);
for n=1:numel(x)
plot([x(n),0],[0,y(n)],'k')
end
plot([1,0,0,1,1],[0,0,1,1,0],'g')
y = (1. - sqrt(x)).^2;
plot(x,y,'LineWidth',4)

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Preguntada:

el 25 de Feb. de 2024

Comentada:

el 26 de Feb. de 2024

Community Treasure Hunt

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

Start Hunting!

Translated by