How to select which plots to print (or not) out of a cell matrix?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Dandro18048
le 13 Juin 2021
Modifié(e) : Dandro18048
le 14 Juin 2021
So I have a cell matrix of 21x14, each cell contains an array with 2 columns of data (x and y for exmaple), I get the average of these values and get just 1 graph out of each cell. The problem is that some of the cells are empty (just zero values), and this depends on my data, so it changes everytime I add new (or remove) data. I don't know how to tell Matlab to print only the plots of nonzero data, other wise I end up with 294 graphs after almost 2 hours of processing time from which a lot are just empty graphs.
Im using a for loop to get the averages and plots of each cell.
0 commentaires
Réponse acceptée
Abhinav Gupta
le 13 Juin 2021
You can use the built-in method all() of matlab to check, if all array elements are nonzero or not. As every element of your cell matrix is a matrix of say n rows and 2 columns, you could use all() method before plotting the graph for each cell.For eg.
>> B = [0 0; 0 0; 0 0; 0 0]
B =
0 0
0 0
0 0
0 0
>> all(B(:)==0)
ans =
logical
1
>> A = [1 0; 0 0; 1 2; 0 0]
A =
1 0
0 0
1 2
0 0
>> all(A(:)==0)
ans =
logical
0
Plot the graph only when you get 0 as the output.
1 commentaire
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur 2-D and 3-D Plots 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!