Plot with background colors depending on the y values
Show older comments
This is my data
data = [1 2 3 4 5 6 7 8 9 10 ; 0.2 0.5 0.1 0.02 0.04 3 6 7 0.01 0.05];
In fact, I have a similar data frame but with a large amount of values (it is about 25 000 rows and 2 columns (x and y))
And I want to obtain this graph in which the background color depends on the yvalue (here : blue for yvalue < 1 and brown for yvalue > 1)

Thanks for help !
Answers (1)
KSSV
on 12 Oct 2017
data = [1 2 3 4 5 6 7 8 9 10 ; 0.2 0.5 0.1 0.02 0.04 3 6 7 0.01 0.05];
x = data(1,:) ; y = data(2,:) ;
[X,Y] = meshgrid(x,y) ;
pcolor(X,Y,Y) ; shading interp
hold on
plot(x,y,'b')
4 Comments
Louis TERRATS
on 12 Oct 2017
KSSV
on 12 Oct 2017
The code does what you shown in image...why don't you show a pictorial example of what you expect.
Image Analyst
on 12 Oct 2017
You can also use patch() or fill() in place of pcolor().
Louis TERRATS
on 12 Oct 2017
Categories
Find more on Data Distribution Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!