Filter löschen
Filter löschen

How can I set transparency in 2D plot?

17 Ansichten (letzte 30 Tage)
ccs
ccs am 4 Mär. 2015
Beantwortet: Peter Rochford am 28 Nov. 2017
I have lots of data points overlaid. I would like to know if the is a way in matlab to set the transparency of my plot to be able to visualize the density clearly?
Thanks

Akzeptierte Antwort

Chris McComb
Chris McComb am 4 Mär. 2015
I don't think there's a way to make markers transparent. However, you could plot each data point as a small circle (using patch), and then set the transparency of the patch. This may be relevant if you go that direction: http://stackoverflow.com/questions/5893513/plot-circles-with-alpha-values-in-matlab
  4 Kommentare
Carl Witthoft
Carl Witthoft am 28 Jan. 2016
I tested that referenced code in R2015a with complete success.
Mike Garrity
Mike Garrity am 28 Jan. 2016
You can't set the transparency of the markers that plot creates. In fact, plot doesn't really have any support for transparency yet.
But as of R2015b, you can set transparency for the markers that scatter creates. That means that you could do this:
x = 1:10;
y = rand(1,10);
h = plot(x,y);
hold on
scatter(x,y,150,'filled', ...
'MarkerFaceAlpha',3/8,'MarkerFaceColor',h.Color)
hold off

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Peter Rochford
Peter Rochford am 28 Nov. 2017
I have written a collection of Matlab functions for creating semi-transparent markers in plots and legends. The files are available from MATLAB Central as the MarkerTransparency package. A few examples of how to use these functions are included in the download and there is also a Wiki on GitHub. A major benefit of this package is it enables the user to have the semi-transparent markers also appear in the legend.

Community Treasure Hunt

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

Start Hunting!

Translated by