use "set" with trasparent color

6 vues (au cours des 30 derniers jours)
shamal
shamal le 6 Juin 2025
Commenté : Walter Roberson le 7 Juin 2025
selected = findobj(allLines,'Type','line','LineWidth',0.5);
set(selected, 'MarkerFaceAlpha',.2,'MarkerEdgeAlpha',.2);
Error using matlab.graphics.chart.primitive.Line/set
Unrecognized property MarkerFaceAlpha for class Line.
Error in mycallback (line 19)
set(selected, 'MarkerFaceAlpha',.2,'MarkerEdgeAlpha',.2);
Error while evaluating Line ButtonDown
Hi, i try to color in trasparente mode but i get error

Réponse acceptée

Matt J
Matt J le 7 Juin 2025
Modifié(e) : Matt J le 7 Juin 2025
It's undocumented, I believe, but you can control line transparency by setting the Color property to a 4-element RGBA value.
h=plot(rand(5,2),'r', 'LineWidth',4);
set(h(2),'Color',[1,0,0, 0.2]);
  3 commentaires
Matt J
Matt J le 7 Juin 2025
Modifié(e) : Matt J le 7 Juin 2025
What I gave you in my example does precisely that. Both lines in the plot are red, but the second line has transparency alpha=0.2. That's what a transparent red line looks like (on a white background).
Walter Roberson
Walter Roberson le 7 Juin 2025
Note:
If you serialize a plot (such as save and restore, or send it between parallel workers), then the transparancy set in this manner will be discarded.

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 7 Juin 2025
Line objects have never supported MarkerFaceAlpha or MarkerEdgeAlpha
MarkerFaceAlpha and MarkerEdgeAlpha are used for Scatter plots.
  1 commentaire
shamal
shamal le 7 Juin 2025
What do you recommend to make the plotted lines more transparent without changing the color?

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by