(转)Matlab坐标修改 gca

来源:互联网 发布:淘宝卖汽车用品赚钱吗 编辑:程序博客网 时间:2024/04/29 08:28
1、坐标轴删除

set(gca,'xtick'[]%去掉x轴的刻度

set(gca,'ytick'[]) %去掉xy轴的刻度

set(gca,'xtick',[],'ytick',[]) %同时去掉x轴和y轴的刻度

2Matlab中“坐标轴刻度”的不同风格

x=1:8;

subplot(2,2,1)

plot(x)

%tick style 0(auto)

 

subplot(2,2,2)

plot(x)

set(gca,'xtick',[1 3 6 8]);%style 1

set(gca,'ytick',[]);%style 2

 

subplot(2,2,3)

plot(x)

set(gca,'xtick',[1 3 6 8]);

set(gca,'xticklabel',sprintf('.4f|',get(gca,'xtick')));%style 3

set(gca,'ytick',[2 4 5 7]);

set(gca,'yticklabel',{'Two','Four','Five','Seven'});%style 4

 

subplot(2,2,4)

plot(x)

set(gca,'xminortick','on');%style 5

set(gca,'ticklength',[0.05 0.025]);%style 6

set(gca,'tickdir','out');%style 7

 

 

另附Maltab坐标调整程序一段:

 

x=20:10:20000;

y=rand(size(x));

semilogx(x,y);

set(gca,'XLim',[20 20000]);

set(gca,'XMinorTick','off');

set(gca,'XTick',[20 31.5 63 125 250 500 1000 2000 4000 8000 16000]);

set(gca,'XGrid','on');

set(gca,'XMinorGrid','off');

 

 

 

3matlab坐标刻度调整

 

subplot(3,2,1)

plot(x)

title('默认格式')

subplot(3,2,2)

plot(x)

set(gca,'xtick',[1 3 6 8]);

set(gca,'ytick',[]);

title('X自定义间隔,Y关闭')

subplot(3,2,3)

plot(x)

set(gca,'xtick',[1 3 6 8]);

set(gca,'xticklabel',sprintf('.4f|',get(gca,'xtick')))

set(gca,'ytick',[2 4 5 7]);

set(gca,'yticklabel',{'Two','Four','Five','Seven'});

title('XY自定义间隔、精度及显示方式')

subplot(3,2,4)

plot(x)

set(gca,'xminortick','on');%style 5

set(gca,'ticklength',[0.05 0.025]);

set(gca,'tickdir','out');

title('XY坐标刻度显示方式')

subplot(3,2,5)

plot(x)

set(gca,'xtick',[min(x) (max(x)+min(x))/2 max(x)]);

set(gca,'ytick',[min(x) (max(x)+min(x))/2 max(x)]);

title('论文中常用的标准3点式显示')

x=20:10:20000;

y=rand(size(x));

subplot(3,2,6)

semilogx(x,y);

set(gca,'XLim',[20 20000]);

set(gca,'XMinorTick','off');

set(gca,'XTick',[20 31.5 63 125 250 500 1000 2000 4000 8000 16000]);

set(gca,'XGrid','on');

set(gca,'XMinorGrid','off');

title('自定义网格显示')

 

%%%%%%%%%%%%%%%%%%%%%%

 

%顺便附上可以格式化坐标刻度的程序段

 

x=get(gca,'xlim');

y=get(gca,'ylim');

set(gca,'xtick',[x(1) (x(1)+x(2))/2 x(2)]);

set(gca,'ytick',[y(1) (y(1)+y(2))/2 y(2)]);

-------------

 

get(gca,'xlim');是获取最大最小刻度的

 

如果需要获取所有在坐标轴上显示的刻度,需要使用get(gca,'ytick')


0 0
原创粉丝点击