⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fix_ytick.m

📁 我认为很不错的语音处理的matlab源代码
💻 M
字号:
function [ytick_m, YTickLabel1, ytick_good, ytick_new, yticklabel_new]=fix_YTick(fmtz)
% fmtz means force mean to zero

YTickLabel1=get(gca, 'YTickLabel');
ytick_m=get(gca, 'YTick');
ylim1=get(gca, 'ylim');

max_yl=max(ylim1);
min_yl=min(ylim1);

ytick_ix_low=find(ytick_m < -0.25*(max_yl-min_yl)+max_yl );
ytick_ix_high=find(ytick_m > 0.25*(max_yl-min_yl)+min_yl );

ytick_good=intersect(ytick_ix_low, ytick_ix_high);

ytick_new=ytick_m(ytick_good);

for e1=1:length(ytick_good);
    if iscell(YTickLabel1(ytick_good(e1), :))
        yticklabel_new{e1}=YTickLabel1{ytick_good(e1), :};
    else
        yticklabel_new{e1}=YTickLabel1(ytick_good(e1), :);
    end
    
end

if length(ytick_good) < 3  || fmtz
    
    if fmtz == 1
        
        buf=max(abs([max_yl, min_yl]));
        
        max_yl=buf;
        min_yl=-buf;
        
    end

    max11=max_yl-0.25*(max_yl-min_yl);
    min11=min_yl+0.25*(max_yl-min_yl);
    
    dif=max11-min11;
    nd3=floor(log10(abs(dif)));
    nd33=log10(abs(dif));
    
    if nd3+0.302 >= nd33
        nd4=-nd3+1;
    else
        nd4=-nd3;
    end
    
    max1=sign(max11)*10^(-nd4)*floor(10^(nd4)*max11);
    min1=10^(-nd4)*ceil(10^(nd4)*min11);
    mean1=0.5*(max1+min1);
    
    ytick_new=[min1 mean1 max1];
    yticklabel_new={};
    for e1=1:3;
        yticklabel_new{e1}=num2str(ytick_new(e1));
    end
    
end

set(gca, 'YTick', ytick_new, 'YTickLabel', yticklabel_new );

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -