removing blackness in ribbon plot

4 views (last 30 days)
Ruben
Ruben on 17 Apr 2013
Commented: Joana Cabral on 18 May 2018
I am currently using the ribbon plotting function to plot a 678x13 matrix. I would like to use this figure in a report I am writing, yet because of the largness of the matrix I get an awful lot of black regions in the figure. Does anyone know how to remove this? I have included the figure to show you the problem.
Thanks in advance
  2 Comments
Mahdi
Mahdi on 17 Apr 2013
Have you tried averaging the data within the matrix?
Have you tried using the width section of the ribbon command as in
ribbon(x,y,width)
Ruben
Ruben on 17 Apr 2013
the width option has no effect. What do you mean with averaging the data within the matrix?

Sign in to comment.

Accepted Answer

Jonathan Epperl
Jonathan Epperl on 17 Apr 2013
The black regions you are seeing are the gridlines along the 678 rows of your matrix. My suggestions:
Save the handles to the surfaces in h:
h = ribbon(M)
Then loop over all of them and set either of those options:
set(ii,'EdgeColor','none')
set(ii,'MeshStyle','column')
set(ii,'EdgeAlpha',.25)
The first removes all the grid lines, the second one removes them in the 'rows' direction, and the third one makes them less opaque. As a copy&paste-able example:
h = ribbon(double(rand([678,20])>.7));
for ii=h'
set(ii,'EdgeAlpha',.25)
end
  2 Comments
Ruben
Ruben on 18 Apr 2013
works like a charm, thank you very much!

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!