File Exchange

image thumbnail

maketransparent

version 1.10.0.0 (193 KB) by Robert
Sets opacity of axes children

3 Downloads

Updated 06 Sep 2016

From GitHub

View Version History

View license on GitHub

MAKETRANSPARENT(h,alpha) sets the transparency of the objects referenced
by h (or the children if the object is an Axes) to alpha.
Inputs
h: an axes handle (does all children) or specific line handle(s)
alpha: the opacity in [0,1] or [] (see below).
Sets the line and marker face opacity and add listener to reset them
in case they are redrawn automatically by MATLAB.
Use alpha = [] to remove the listeners. Note that this will not
revert the transparency automatically.
Example:
x = linspace(0,100,1000);
y1 = sin(x/10)+randn(size(x))/2;
y2 = sin(x/10);
h = plot(x,y1,'o',x,y2,'-');
set(h(1),'MarkerFaceColor',get(h(1),'Color'),'MarkerEdgeColor','none')
set(h(2),'LineWidth',8)
maketransparent(h,0.5)
Requires R2014b or newer (HG2)
Inspired by Yair Altman's UndocumentedMatlab.com

Cite As

Robert (2021). maketransparent (https://github.com/raaperrotta/maketransparent), GitHub. Retrieved .

Comments and Ratings (2)

Chi-Fu

Thank you for this elegant solution! It works for log scale too!

George Lauder

MATLAB Release Compatibility
Created with R2016a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!