|||
IDL中有对一维数组排序的函数sort,使用示例代码如下。
Sort()函数实现数组的排序功能,返回结果是排序后数组的下标索引。
调用格式:Result = Sort(数组[, /L64])
IDL> arr = [5, 2, 1,3,4]
IDL> ;数组排序后索引
IDL> print,sort(arr)
2 1 3 4 0
IDL> ;排序后数组
IDL> print,arr[sort(arr)]
1 2 3 4 5
如果对二维数组针对某一列进行排序,可以先把这一列提取出来排序获取排序后的索引,然后调整数组顺序。
IDL> arr = [[2,3],[1,5],[4,2]]
IDL> print,arr
2 3
1 5
4
2
IDL> void = reform(arr[0,*])
IDL> sidx = sort(void)
IDL>
narr= arr[*,[sidx]]
IDL> print,narr
1 5
2
3
4 2
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-9-2 02:32
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社