color region in the plot based on the values
    6 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
    Turbulence Analysis
 le 2 Nov 2023
  
    
    
    
    
    Commenté : Star Strider
      
      
 le 2 Nov 2023
            Hi,
In the attached array, I need to color the region based on whenever A(:,2) is greater than 5. I tried yregion,seems this will work only in 2023. 
2 commentaires
  Dyuman Joshi
      
      
 le 2 Nov 2023
				Which version of MATLAB are you using?
If you want an output similar to what yregion provies, what is the upper limit for the region?
If it is not similar to that, what is the expected output? A visual example would be helpful.
  Dyuman Joshi
      
      
 le 2 Nov 2023
				You forgot to provide the end values - 
Red color from 5 to what? Inf?
Similarly, green color from what to 5? -Inf?
And I suppose the x-limits should be the range of the x values i.e. A(:,1)?
Réponse acceptée
  Star Strider
      
      
 le 2 Nov 2023
        Try this — 
LD = load('matlab.mat');
A = LD.A
thrshld = 5;
Lv = A(:,2) > thrshld;
idx1 = find(Lv);
idx2 = idx1(diff([0; idx1]) == 1);
% [x1,x2] = bounds(idx2)
idx2 = min(idx2) : max(idx2);
figure
plot(A(:,1), A(:,2))
hold on
patch([A(idx2,1); flip(A(idx2,1))], [thrshld+zeros(size(A(idx2,2))); flip(A(idx2,2))], 'r', 'FaceAlpha',0.5, 'EdgeColor','none')
patch([A(idx2,1); flip(A(idx2,1))], [min(ylim)+zeros(size(A(idx2,2))); thrshld+zeros(size(A(idx2,2)))], 'g', 'FaceAlpha',0.5, 'EdgeColor','none')
hold off
grid
.
3 commentaires
Plus de réponses (0)
Voir également
Catégories
				En savoir plus sur Annotations dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




