How to select which plots to print (or not) out of a cell matrix?
4 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Abhinav Gupta
2021-6-13
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Specifying Target for Graphics Output 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!