how can i plot the line in different colours

close all; clear all; clc;
x = -5:0.01:5;
y = zeros(1,length(x));
for i = 1:length(x)
if(x(i) < -1)
y(i) = x(i) + 2;
hold on
elseif(x(i) <= 2 )
y(i) = x(i)^2;
hold on
elseif(x(i) > 2)
y(i) = -2*x(i) + 8;
hold on
end
end
plot(x,y)

1 comentario

Hannes Arnar
Hannes Arnar el 14 de Sept. de 2015
How can i make the line bigger ?
close all; clear all; clc;
x = -5:0.01:5; y = zeros(1,length(x));
cond1 = x < -1; cond2 = x >= -1 & x <= 2; cond3 = x > 2; y( cond1 ) = x( cond1 ) + 2; y( cond2 ) = x( cond2 ).^2; y( cond3 ) = -2 * x( cond3 ) + 8; figure; plot( x( cond1 ), y( cond1 ), 'r:' ) hold on plot( x( cond2 ), y( cond2 ), 'b:' ) plot( x( cond3 ), y( cond3 ), 'g:' )

Iniciar sesión para comentar.

 Respuesta aceptada

Adam
Adam el 14 de Sept. de 2015
Just plot three different lines and give them each a colour rather than plotting them in a single instruction. You can also put the numbers into the vector without requiring a for loop too e.g.
cond1 = x < -1;
cond2 = x >= -1 & x <= 2;
cond3 = x > 2;
y( cond1 ) = x( cond1 ) + 2;
y( cond2 ) = x( cond2 ).^2;
y( cond3 ) = -2 * x( cond3 ) + 8;
figure;
plot( x( cond1 ), y( cond1 ), 'r' )
hold on
plot( x( cond2 ), y( cond2 ), 'g' )
plot( x( cond3 ), y( cond3 ), 'b' )

Más respuestas (1)

Image Analyst
Image Analyst el 14 de Sept. de 2015
Regarding your question about line width in your comment above, to make the line bigger (thicker), change the 'LineWidth' option:
plot(x(cond3), y(cond3), 'g:', 'LineWidth', 3);

Categorías

Más información sobre Discrete Data Plots en Centro de ayuda y File Exchange.

Preguntada:

el 14 de Sept. de 2015

Respondida:

el 14 de Sept. de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by