displaying specific range of data with different color in a plot

13 views (last 30 days)
I have a data say x and y vectors. I want to plot x and y, however I want certain part to have different color from the others. How can I get it done.

Answers (2)

Thorsten
Thorsten on 26 Nov 2014
I know of no other way as splitting the x into those different parts that you need to color differently. E.g., to plot negative values in red and positive values in blue:
x = -10:0.1:10;
plot(x(x<=0), sin(x(x<=0)), 'r', x(x>=0), sin(x(x>=0)), 'b')

ben hirsig
ben hirsig on 21 Mar 2018
Edited: ben hirsig on 21 Mar 2018
Here's my solution. Disregard the 'if true' 'end' statements. I'm not sure how to get rid of them without changing the rest to just simple text and not code.
if true
figure()
hold on
scatter(t(1:278), predicted(1:278), 'or'); % Plot red circles for elements 1:278
scatter(t(279:end), predicted(279:end), 'ob'); % Plot blue circles for the remaining elements
end
  1 Comment
SAIF MEHDI
SAIF MEHDI on 5 May 2020
Hi,
I tried your method but it drew another line instead of completing the rest of the plot
plot(BAPred(1:300))
hold on
plot(BAPred(300:end))

Sign in to comment.

Categories

Find more on Line Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!