Set the Yticklabel to different colors

164 Ansichten (letzte 30 Tage)
yang yang
yang yang am 9 Feb. 2012
Hi all, I used this code to set the color of XLable:xlabel('\color{magenta}Love').It works.But I used this way to set the color of Yticklabel,it didn't work(set(h,'Yticklabel',{'\color{magenta}Love','b'})).I want to know how I can set the Yticklabel to different colors.
Thanks for all your kindly answering.
  1 Kommentar
yang yang
yang yang am 10 Feb. 2012
I want to know how I can make the YTickLabels in different colors.I mean I want every one label has a different color from the others.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 10 Feb. 2012
There is no direct mechanism for doing this. The tick labels are not processed through the Interpreter, and are not processed as HTML, and there is no color specifier for them other than the axis color that Elige mentions.
The best you can do is to text() them in to place yourself.
  1 Kommentar
yang yang
yang yang am 11 Feb. 2012
Thanks for your answer.I think your idea may work,I will try later.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (4)

Frank Zalkow
Frank Zalkow am 19 Mai 2017
Something in this vein works:
% make a plot
plot([1,2,3])
% get the current tick labeks
ticklabels = get(gca,'YTickLabel');
% prepend a color for each tick label
ticklabels_new = cell(size(ticklabels));
for i = 1:length(ticklabels)
ticklabels_new{i} = ['\color{red} ' ticklabels{i}];
end
% set the tick labels
set(gca, 'YTickLabel', ticklabels_new);
  1 Kommentar
Walter Roberson
Walter Roberson am 20 Mai 2017
Note: this requires R2014b or later; in versions earlier than that, the tick labels are not processed by latex or tex.

Melden Sie sich an, um zu kommentieren.


Giorgio
Giorgio am 20 Jun. 2018
The possibility of customizing the colors of the tick labels is now available.
A well written explanation is reported here: https://undocumentedmatlab.com/blog/customizing-axes-tick-labels

Dr. Seis
Dr. Seis am 9 Feb. 2012
This not only changes the color of the tick label, it also changes the color of the specified axis:
set(h,'YTickLabel','Hate|Dislike|SoSo|Okay|Great|Love','YColor','magenta');
This example replaces the 6 default YTickLabels with the labels specified above in addition to changing the color of the text and axis to magenta.
  3 Kommentare
Dr. Seis
Dr. Seis am 10 Feb. 2012
Not sure if there is a way to do this with HTML... all my tests at trying to do so failed. Anyone else have an idea?
yang yang
yang yang am 11 Feb. 2012
Thanks for your answer again!

Melden Sie sich an, um zu kommentieren.


Andrew Gibbons
Andrew Gibbons am 13 Dez. 2018
If you happen to be creating a GUI, use
axes(handles.axes1)
handles.axes1.XColor = [1 1 1] %[1 1 1] is for white, [0 0 0] for black, and in between are different colors
This specifies which axes you want to modify and then XColor changes the color of the x-axis.
  1 Kommentar
Walter Roberson
Walter Roberson am 13 Dez. 2018
This sets the color of everything to do with that axes, including grid lines and tick marks.

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