如何在Matlab中为下面显示的数据绘制3D图形

时间:2017-01-24 05:04:33

标签: matlab matlab-figure

我需要在3D平面中绘制和查看下面显示的数据,其中碎片离子在X轴上,Y轴上的氨基酸和特定碎片离子的“离子数”。 Z轴上的氨基酸。

Fragment Ion    Amino Acid  No of Ions


'b1'           'YY'              1

'b2'           'YF'              7

'b2'           'YE'              3

'b4'           'TV'              4

'b5'           'VS'              11

'b7'           'VK'              10

'b8'           'VL'              7

'b12'          'VK'              9

1 个答案:

答案 0 :(得分:0)

我希望我理解你。我会这样做:

data=importdata('yourdatafile.txt')
fragmentIon=data.textdata(2:end,1)
aminoAcid=data.textdata(2:end,2)
noOfIons=data.data

X=1:length(fragmentIon)
Y=1:length(aminoAcid)
Z=noOfIons

XTickLabels=unique(fragmentIon)
YTickLabels=unique(aminoAcid)

XTicks=1:length(XTickLabels)
YTicks=1:length(YTickLabels)

for i=1:length(fragmentIon)
    X(i)=find(strcmp(XTickLabels,fragmentIon{i}))
    Y(i)=find(strcmp(YTickLabels,aminoAcid{i}))
end

figure
plot3(X,Y,Z,'x')

set(gca,'XTick',XTicks,'XTickLabel',XTickLabels,'YTick',YTicks,'YTickLabel',YTickLabels)

Plot Looks like this