Matlab的XTickLabel中数值带下标

本文介绍了一个Matlab函数settick,用于自定义坐标轴的刻度标签。通过设置x轴或y轴的刻度值为特定的字符数组,可以实现坐标轴刻度的个性化展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

%axis为'x''y',分别表示更改x或y刻度
%ticks是字符cell
function settick(axis,ticks)
n=length(ticks);
tkx=get(gca,'XTick');tky=get(gca,'YTick');
switch axis
    case 'x'
        w=linspace(tkx(1),tkx(end),n);
        set(gca, 'XTick', w, 'XTickLabel', []);%刷新刻度,去掉刻度值
        yh=(14*w(1)-w(end))/13;%按坐标轴比例调整刻度纵坐标位置
        for i=1:n
            text('Interpreter','tex','String',ticks(i),'Position',[w(i),yh],'horizontalAlignment', 'center');
        end
    case 'y'
        w=linspace(tky(1),tky(end),n);
        set(gca, 'YTick', w, 'YTickLabel', []);
        xh=(11*w(1)-w(end))/10;
        for i=1:n
            text('Interpreter','tex','String',ticks(i),'Position',[xh,w(i)],'horizontalAlignment', 'center');
        end
end

 

 

例如:
>> x=0:0.1:4*pi;plot(x,sin(x));ticks={'G_1'  'G_2'  'G_3'  'G_4'  'G_5'};settick('x',ticks)
>> figure;x=0:0.1:4*pi;plot(x,sin(x));ticks={'G_1'  'G_2'  'G_3'  'G_4'  'G_5'};settick('y',ticks)

 

from: http://www.ilovematlab.cn/thread-39718-1-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值