坐标轴刻度标签旋转升级版
础上进行升级完善,给出更加自由的坐标轴刻度标签旋转:1.支持上下左右四个坐标轴的刻度标签旋转
2.支持plotyy及其他所有画图函数返回的axes句柄的刻度标签旋转(谢老师的我尝试过除了plot以外其他的画图函数有的支持的不是很好)
3.增加刻度标签的对齐方式(left | center | right)
实现核心说白了就是 利用text命令来重新绘制刻度标签。
可能有人要问为什么要进行坐标轴刻度标签旋转?当你要进行坐标轴刻度标签的自由控制,你就知道这有多重要了。
实例展示:
http://www.matlabsky.com/static/image/common/none.gif
实例代码:
[*]%% TickLabelRotate_Test
[*]% by LiYang
[*]% Email:farutoliyang@gmail.com
[*]% 2012/3/17
[*]% Matlab Version : Matlab R2011b
[*]%% A Little Clean Work
[*]tic;
[*]clear;
[*]clc;
[*]close all;
[*]format compact;
[*]%% TickLabelRotate(AX_handle,tag,rot,HorizontalAlignment,UpDown)
[*]
[*]x = 1:3;
[*]y = [-1,0,1];
[*]ylabel = {'-1(小)';'0(中)';'1(大)'};
[*]xlabel = {'2008-01-01';'2009-01-01';'2010-01-01'};
[*]
[*]figure;
[*]% 下
[*]subplot(2,2,1);
[*]plot(x,y);
[*]set(gca,'XTickLabel',xlabel);
[*]set(gca,'YTickLabel',ylabel);
[*]set(gca,'XTick',x);
[*]set(gca,'YTick',y);
[*]TickLabelRotate(gca,'x',60,'right',1);
[*]
[*]% 上
[*]subplot(2,2,2);
[*]plot(x,y);
[*]set(gca,'XTickLabel',xlabel);
[*]set(gca,'YTickLabel',ylabel);
[*]set(gca,'XTick',x);
[*]set(gca,'YTick',y);
[*]set(gca,'XAxisLocation','Top');
[*]TickLabelRotate(gca,'x',30,'left',2);
[*]% 左
[*]subplot(2,2,3);
[*]plot(x,y);
[*]set(gca,'XTickLabel',xlabel);
[*]set(gca,'YTickLabel',ylabel);
[*]set(gca,'XTick',x);
[*]set(gca,'YTick',y);
[*]TickLabelRotate(gca,'x',60,'right',1);
[*]TickLabelRotate(gca,'y',30,'right',3);
[*]% 右
[*]subplot(2,2,4);
[*]plot(x,y);
[*]set(gca,'XTickLabel',xlabel);
[*]set(gca,'YTickLabel',ylabel);
[*]set(gca,'XTick',x);
[*]set(gca,'YTick',y);
[*]set(gca,'YAxisLocation','Right');
[*]TickLabelRotate(gca,'y',30,'left',4);
[*]
[*]%% Record Time
[*]toc;
复制代码
坐标轴刻度标签旋转升级版TickLabelRotate.m源代码。**** Hidden Message *****
henhaohaohaohoahoahoaho
mark!!!!!!!!!!
正好需要!谢谢
谢谢分享,找到了,不容易!
感谢分享,mark
thanks
:lol谢谢分享
页:
[1]