Plot with background colors depending on the y values

9 views (last 30 days)
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
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
Image Analyst
Image Analyst on 12 Oct 2017
You can also use patch() or fill() in place of pcolor().
Louis TERRATS
Louis TERRATS on 12 Oct 2017
I got it ! But I used bar() (to create histogram) instead of patch() or pcolor()

Sign in to comment.

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!