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 Kommentare

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 am 17 Apr. 2013
the width option has no effect. What do you mean with averaging the data within the matrix?

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Jonathan Epperl
Jonathan Epperl am 17 Apr. 2013

1 Stimme

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 Kommentare

Ruben
Ruben am 18 Apr. 2013
works like a charm, thank you very much!
Joana Cabral
Joana Cabral am 18 Mai 2018
Thanks!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by