首页 > 代码库 > IDL基础
IDL基础
先列后行arr=indgen(3,4)SIZE(arr,/dimensions) print ,where(arr gt7)print,arr[where(arr gt 7)]print,where(arr gt 7,cout,COMPLEMENT=com,ncomplement=ncom)array[WHERE(array GT 5, /NULL)] = 5arr=indgen(2,8);arrReform=reform(arr,1,8);维数一定,改变个数arrRebin=REBIN(arr,2,8);维数一定,改变每一维的倍数 arrCongrid=congrid(arr,1,1)arrRotate5=ROTATE(ARR,5)arr=indgen(8)print,arr[sort(arr)];sort()返回排序后的索引print,uniq(arr,sort(arr));返回arr中的唯一值,即,不重复,如果用uniq(arr)则返回的是将相邻的相同值只取一个,不相邻的却去不了print,arr1 # arr2;数组相乘print,arr1 ## arr2;矩阵相乘print,strmid(str,strlen(str)+1,strlen(str),/reverse_offset);反向截取字符串file=dialog_pickfile()print,filehdr=STRMID(file,pointPosition+1,strlen(file)-pointPosition-1)help,strtrim(string(a),1);转换为string并trim掉一边的空格结构体 str={v1:5,v2:‘dfdf‘};定义匿名结构体print,n_tags(str);结构体个成员个数print,tag_names(str);结构体成员 名称print,str.v1;某一成员的值str3={two,inherits one,v4:‘1‘};two结构体继承自one,并向two添加v4变量动态扩展str4=create_struct(str2,‘v5‘,findgen(5));创建结构体,并将str2中的数据也copy过来指针data=http://www.mamicode.com/indgen(5);定义数组"技术分享" title="clip_image001" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; margin: 0px; display: inline; padding-right: 0px" border="0" alt="clip_image001" src="http://image.mamicode.com/info/201501/20181001142628142875.png" width="244" height="149" />IDL> z=shift(dist(40),20,20)% Compiled module: DIST.IDL> z=exp(-(z/10)^2)IDL> surface,zIDL> 输出为:数据输入输出:print,read,reads,string()IDL> str=‘123 45 idl‘IDL> a=0IDL> b=‘‘IDL> reads,str,a,bIDL> help,a,bA INT = 123B STRING = ‘ 45 idl‘Format---输出格式控制[n]FC[+][-][width]Opner 只读操作Openw 写文件Openu File_search() 搜索特定的文件Dialog_pickfile() Fstat() Eof() 判断是否到最后Close 关闭逻辑设备号Free_Lun 释放逻辑设备号;按行读取数据pro readAndWriteFilefile=dialog_pickfile();打开文件openr,lun,file,/get_lun;读取文件temp=‘‘;定义中间变量用来存储读取的数据openw,lunOpen,‘F:\envi\Temp\openw1.txt‘,/get_lunwhile(~eof(lun))do begin readf,lun,temp printf,lunOpen,tempEndwhile free_lun,lunfree_lun,lunOpenend;分块读取数据file=dialog_pickfile()openr,lun,file,/get_lundata1=strarr(20)data2=findgen(6,30)readf,lun,data1readf,lun,data2print,data1print,data2;向导式读取数据pro ascii_templatemethondfile=dialog_pickfile()if ~file_test(file) then return template=ascii_template(file);存为二进制文件if size(template,/type) eq 2 then return;判断读进来的数据是否为整形data=http://www.mamicode.com/read_ascii(file,template=template);读取二进制文件>IDL基础
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。