Borrar filtros
Borrar filtros

Can I change the color of the label in xline / yline to be different from the color of the line?

89 visualizaciones (últimos 30 días)
I want the label color (i.e., of the text) to be a different color than the line color in xline and/or yline.
Is there an easy way to do this without the workaround below?
xline(5, '-', 'Text');
hold on;
xline(5, '-g');
hold off;
  1 comentario
VINAYAK LUHA
VINAYAK LUHA el 11 de Sept. de 2023
Editada: VINAYAK LUHA el 11 de Sept. de 2023
Hi Michael,
Instead of plotting the same line twice, you can plot the line once followed by the text as shown below -
xline(5, '-g');
hold on;
text(5, 0, 'Text', 'Color', 'red', 'HorizontalAlignment', 'right', 'VerticalAlignment', 'bottom');
hold off;

Iniciar sesión para comentar.

Respuesta aceptada

Dyuman Joshi
Dyuman Joshi el 11 de Sept. de 2023
Unfortunately, No, there is no property "Label color" for xline and yline functions (Constant Line Annotation) which can be modified.
Also, you don't need to use hold for xline() and yline().
  5 comentarios
Michael Mazack
Michael Mazack el 11 de Sept. de 2023
Thanks, Steven -- very helpful suggestion.
The need is to make xlines and ylines -- which may obscure the data and blank space -- have lower contrast with the plot background color while having the label of the line have high contrast so the viewer can easily read it.
I have submitted an enhancement request at the link you provided with more user story detail. Thank you.
Adam Danz
Adam Danz el 11 de Sept. de 2023
> The need is to make xlines and ylines...have lower contrast with the plot background color while having the label of the line have high contrast so the viewer can easily read it.
To achieve that, lower the Alpha value of the ConstantLine objects. This won't affect the label.
plot(peaks,'k-')
xline(10,'-k','Default Alpha')
xline([20:10:40], '-k', 'Lower alpha','Alpha',0.2)

Iniciar sesión para comentar.

Más respuestas (1)

Afiq Azaibi
Afiq Azaibi el 4 de Oct. de 2024 a las 19:49
Starting in R2024b, you can leverage the LabelColor property on ConstantLine to control the color of the label independently of the line.
x = xline(3, 'r', 'some label');
x.LabelColor = 'k';

Productos


Versión

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by