How to add different texts in xline, when using arrayfun ?

14 vues (au cours des 30 derniers jours)
Sim
Sim le 17 Mar 2023
Commenté : Star Strider le 17 Mar 2023
How to add different texts in xline, when using arrayfun, as in the following example?
% Input and current status
fig = figure();
ax = axes(fig);
ax.XTick = 1:14;
hold on
arrayfun(@(x)xline(x,'-','S','LabelOrientation','horizontal','Color',[.5 .5 .5]), 0:13)
% Desired Output:
  2 commentaires
Antoni Garcia-Herreros
Antoni Garcia-Herreros le 17 Mar 2023
Hello Sim,
You could try something like this for each case:
a(3).Label='M';a(3).Color='k'; % Maybe change FontName and FontSize
Although I'm sure there must be a better way of doing it.
I cannot find a way to have different color for the text and the lines.
Sim
Sim le 17 Mar 2023
Thanks a lot @Antoni Garcia-Herreros... :-) Actually, I was looking for a little bit "more automatic" way to do so... :-)

Connectez-vous pour commenter.

Réponse acceptée

Star Strider
Star Strider le 17 Mar 2023
Perhaps something like this —
fig = figure();
ax = axes(fig);
ax.XTick = 1:14;
dy = ["S","S","M","T","W","T","F"];
hxl = xline(ax.XTick-1,'-k',repmat(dy,1,fix(max(ax.XTick)/7)), 'LabelOrientation','horiz');
.
  4 commentaires
Sim
Sim le 17 Mar 2023
Modifié(e) : Sim le 17 Mar 2023
ah ok cool! Again many thanks :-)
.....Also..... just in case you want to get another "Accepted Answer" ..........there would be also this small thing here........ :-) :-)
Star Strider
Star Strider le 17 Mar 2023
Thank you for the reference!
I posted an Answer to it.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Word games dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by