在 Matlab 中重新打开 xtick 和 xticklabel

Turn xtick and xticklabel back on in Matlab

作为作业的一部分,我正在使用 Matlab 创建游戏。我在图 window 中创建了一个倒计时屏幕,因此关闭了 x 和 y 刻度标签。但是,当倒计时结束时,我想重新打开 y 刻度标签,那么有没有办法恢复到关闭标签之前的默认设置?

到目前为止的代码:

figure('Color',[0,0,0],'units','normalized','outerposition',[0 0 1 1]);
whitebg(1,'k')
axis off
for k=5:-1:0
    if k==0
        gotext={'Go!'};
        gotexty=text(10,10,gotext,'FontSize',60);
        pause(1)
    end
    axis off
    plot(10,10)
    timetext={[num2str(k)]}; %Create live text on side of Figure.
    set(gca,'xtick',[])
    set(gca,'xticklabel',[])
    set(gca,'ytick',[])
    set(gca,'yticklabel',[])
    if k~=0
        timetexty=text(10,10,timetext,'FontSize',60);
        pause (1)
        delete(timetexty)
    end
end
axis on
title('Lunar falling!')
ylabel('Height above moon (m)')
set(gca, 'xTick', []);
hold on

非常感谢。

更新: 尝试在 for 循环之后立即添加 set(gca,'xticklabelmode','auto')set(gca,'yticklabelmode','auto') 行,但这似乎不起作用。在倒计时期间,滴答声根据需要关闭,但我没有在如图所示后捡起它们 here and here

要重新启用刻度,您可以使用

set(gca,'xtickmode','auto')
set(gca,'ytickmode','auto')
set(gca,'xticklabelmode','auto')
set(gca,'yticklabelmode','auto')

这使 Matlab 可以控制要使用的刻度和刻度标签,这是默认模式。请注意,当您执行 set(gca,'xtick',[])set(gca,'xticklabel',[]) 等时,'xtickmode''xticklabelmode' 等被隐式设置为 'manual'.