有没有办法用不同(交替)高度绘制轴值?

Aur*_*eon 6 matlab plot

我喜欢在MATLAB中绘制一个傅里叶变换后的信号.通过set(gca,'xtick',peak,'FontSize',12); 我可以在x轴显示峰值.但有时候,峰值距离太远,显示峰值的文本与其邻居合并在一起.我在网上搜索过,但可能会问错误的问题:)所以我的问题是: 如何用交替的高度绘制峰值,如下图所示? 我更喜欢使用1 x轴.

在此输入图像描述

谢谢您的帮助!:)

bla*_*bla 7

为有趣的问题+1.

这是一种方法,可能不是最优雅,但显示逻辑并实现它:

x=0:pi/10:pi;
plot(x,sin(x));

set(gca, 'XTick', x, 'XTickLabel', cell(numel(x),1));
yl=get(gca,'YLim');
for n=1:numel(x)
    if mod(n,2)
       text(x(n), yl(1), {num2str(x(n)),''},'HorizontalAlignment','Center','VerticalAlignment','Top');
    else
       text(x(n), yl(1), {'',num2str(x(n))},'HorizontalAlignment','Center','VerticalAlignment','Top');
    end
end
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

使用各种文本属性来更改字体大小或文本格式等...