我使用斯隆数字巡天(SDSS)数据,得到了this文件的最终数据产品。第一列是wLength
(波长),第二列是flux
。
将{0}存储在zero_F
变量zero_F = find(a==0)
中,我使用wLength(zero_F)=[];
和flux(zero_F)=[];
从两列中删除了它们。我想绘制wLength
vs flux
,flux
取决于wLength
,但wLength
包含非唯一的值。
如何获取数据中非唯一值的索引,以便我可以从wLength
和flux
中删除相应的索引,以生成相同大小的数组并绘制它们。此外,由于issorted(wLength)
返回0
,这意味着wLength
未被整理出来,但将其排序肯定会改变其值与flux
的对应关系,如何我可以根据flux
值对wLength
进行排序吗?
答案 0 :(得分:1)
您可以尝试这样的事情:
% Get unique values from wLength
[wLengthUn, iUn, ~] = unique(wLength);
fluxUn = flux(iUn);
% Sort the arrays, if needed
[wLengthSrt, iSrt] = sort(wLengthUn);
fluxSrt = fluxUn(iSrt);
% Plot data
plot(fluxSrt, wLengthSrt)