如何标注有在MATLAB峰情节(How to label plot having peaks in

2019-10-22 02:19发布

我试图标记具有峰我的X射线衍射数据,我想从我的数据的阵列其标记为:

  peak label  
    ab
    ac
    ad
    cb
    bb
    ba

见下图

我也希望这些标签对山峰的顶部垂直对齐。 我试过findpeaks功能,但它不能正常工作。

Answer 1:

试试这个(但你需要有信号处理Toobox):

x = [1 2 3 4 5 6 7 8 9] 
y = [1 4 2 7 3 9 5 10 2]
[peak, peakId] = findpeaks(y); %find peaks in your serie
figure(1) 
plot(x, y)
lbalph=('a':'z').'
lb=strcat(Alphabet(1),lbalph(1:length(peak))) %Create a label matrix
lb = num2cell(lb,2) % Convert to cell array
lbid = 1:length(lb)
text(x(peakId), peak, lb(lbid),'Rotation',90) % label the peak with your lb matrix

当你有索引的山峰,你可以标记为你想要的。



文章来源: How to label plot having peaks in matlab
标签: matlab label