How can I rotate the axis tick labels in 2-D and 3-D?

5 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2013 年 10 月 18 日
編集済み: MathWorks Support Team 2023 年 5 月 19 日
I would like to rotate the axis tick labels in 2-D and 3-D.

採用された回答

MathWorks Support Team
MathWorks Support Team 2023 年 5 月 19 日
編集済み: MathWorks Support Team 2023 年 5 月 19 日
For MATLAB releases before R2014b, below is an example that demonstrates how to rotate the X-tick labels in MATLAB :
% Create some data:
X = 1:12;
Y = rand(1,12);
% Generate a plot
bar(X,Y);
% Set the tick locations and remove the labels
set(gca,'XTick',1:12,'XTickLabel','')
% Define the labels
lab = [{'January'};{'February'};{'March'};{'April'};{'May'};{'June'};...
{'July'};{'August'};{'September'};{'October'};...
{'November'};{'December'}];
% Estimate the location of the labels based on the position
% of the xlabel
hx = get(gca,'XLabel'); % Handle to xlabel
set(hx,'Units','data');
pos = get(hx,'Position');
y = pos(2);
% Place the new labels
for i = 1:size(lab,1)
t(i) = text(X(i),y,lab(i,:));
end
set(t,'Rotation',90,'HorizontalAlignment','right')
Following is a simple example of how to rotate an x-label in 3-D:
view(3)
xlabel('Hello');
h = get(gca,'xlabel');
set(h,'Rotation',20)
Alternatively, you can use this user created File Exchange submission that can perform the same task:
Please note that the above File Exchange file was not authored by MathWorks. Any questions regarding this file should be directed to the contributing author of that file.
NOTE: If you are working under the MS Windows version of MATLAB, you will need to make sure that you are using a Truetype font in your text objects. Truetype are the only fonts which can be rotated correctly on the screen and on printouts.
  1 件のコメント
daniel
daniel 2015 年 2 月 4 日
I think you are confusing "xlabel" with "XTickLabel" I believe the question is regarding the rotation of XTickLabels and not the Xlabel itself. I too am searching for a solution regarding the rotaion of XTickLabels but have yet to find one.

サインインしてコメントする。

その他の回答 (2 件)

daniel
daniel 2015 年 2 月 12 日
if you have 2014b you can do this:
ax = gca;
ax.XTickLabelRotation = -45;

Alexey
Alexey 2016 年 1 月 6 日
編集済み: MathWorks Support Team 2021 年 11 月 4 日
or (I think starting with 2014) you can just do
ax.XTickLabelRotation=45;
as per docs

カテゴリ

Help Center および File ExchangeAxis Labels についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by