convert or translat number to specific word using it for title

3 Ansichten (letzte 30 Tage)
Yousif Alaraji
Yousif Alaraji am 26 Mär. 2023
Bearbeitet: Adam Danz am 26 Mär. 2023
I am trying to generate a title for my Plot that work according to a Number so lets say if the Number is (1) then the word will be (Normal) if the Number is (2) the words will be (Level1) ..etc
I used the below code for the Title using (renamecats) function but It didn't work I don't know why.
for n = 1:numel(out(1,:))
x=out(2:end,n);
subplot(4,2,n);
plot(t,x);
if n == 3 || n == 4
xlabel('Seconds');
end
title(renamecats({n},string(catnames)));
end
Best Regards,
Yousif
  1 Kommentar
Adam Danz
Adam Danz am 26 Mär. 2023
Bearbeitet: Adam Danz am 26 Mär. 2023
I think you just need to replace the title(__) line with
title(catnames(n));
or, is the problem that the categorical values are not in the intended order?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov am 26 Mär. 2023
Here is onee of the possible solutions with one simple example:
T = randn(4, 15);
t=1:15;
catnames = {'Normal', 'Level 1', 'Level 2', 'Level 3'};
for n = 1:size(T,1)
switch n
case 1
x=T(n,:);
subplot(4,2,n);
plot(t,x);
title (catnames{n})
case 2
x=T(n,:);
subplot(4,2,n);
plot(t,x);
title (catnames{n})
case 3
x=T(n,:);
subplot(4,2,n);
plot(t,x);
title (catnames{n})
case 4
x=T(n,:);
subplot(4,2,n);
plot(t,x);
title (catnames{n})
end
end
  2 Kommentare
Yousif Alaraji
Yousif Alaraji am 26 Mär. 2023
Many thanks dear,
I also used
d=dictionary([1,2,3,4],catnames);
title(d(n));
also works,

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by