怀柔磁场: S-L, Q-T, U-R
读速度场: vew
读jpeg图: read_jpeg,infile(i),a2
a1=extrac(a2(*,*,*),0,200,950,3,480,530)
显示二维图像: tvscl,m
平移数组:m1=shift(m,0,25,12) ;数组可以是三维或三维以上。
显示jpeg彩色图像: tvscl,m,true=1
scale overlap on a image:
plot,x,y,color=250,xtitle='X (arcsec)',ytitle='Y (arcsec)',/nodata,/noerase
显示位置: tvscl,image,100,100 ;100为图像左下角位置。
显示特殊字符:
xyouts,0.22,0.34,'195 !Z(00c5)',font=1,charsize=1.2,charthick=4.0,/norm,color=4
font=1为truetype,0为设备字体,-1为矢量字体。!Z(00c5)显示Å。字体编码表
保存 ps 文件:
set_plot,'ps'
device,filename='a.ps',/portrait,xsize=5,ysize=5,$
xoffset=2.5,yoffset=10.,bits_per_pixel=16
device,/close
set_plot,'win'; for windows
set_plot,'x'; for Linux
xsize=5(单位厘米)水平宽,
xoffset=2.5 左边距
,/color 画彩色ps图,可转存为JPEG彩图
画右边Y轴;
!Y.style=8
axis,3,yaxis=1,Yrange=[-8,-6],/save,ytitle=' ',color=0
求余运算: a mod b
读取光标位置: cursor,x,y,/device
等待: cursor,x,y,3,/device
在循环中等带鼠标: cursor,x,y,/down,device;加关键词down
EIT 195: 512*512, solar disk: 374 pixels
MDI: 800*800, solar disk: 772
等值图:
!p.multi=[0,1,1]
window,0,xs=cx,ys=cy
!p.position=[0,0,1,1]
tvscl,dat1>(-500)<500
contour,dat1,levels=[0.,1000.],xst=1, yst=1,c_thick=1
,/noerase,c_color=0,c_linestyle=0 ;xst=xstyle =1时,等值图与原图对齐,xstyle=4时,不画外框和坐标
pos=[0.0,0.333,0.497,0.6660] ; assign position of
contour
读fits头文件参数: tima=sxpar(hr,'date-obs'); hr头文件变量,‘date-obs’参数名称
调取文件:filename=findfile('*.dat')
用图形界面:filen=dialog_pickfile(filter='*.dat',/read)
提取文件名:
file=H:\data\0218\20030218_0012_eit_195.gif
length=strlen(file)
psfile=strmid(file,length-38,34)+'.ps'
38为从左起顺序,0为从左面第一个字母开始,34为提取个数
!p.multi=[0,3,1] 一行三列的图
画圆
for k=1,249 do begin
for j=1,249 do begin
s=sqrt(float((k-83))*float((k-83))+float((j-86))*float((j-86))) ; (83,86)圆心位置
if (s lt 17.0) and (s gt 16.0) then begin; 16,17 半径
a1(*,k,j)=a1(*,k,j)
;a1(*,k,j)=max(a1)
endif else begin
endelse
endfor
endfor
read positin angle of Sun' axis:
rb0p=get_rb0p('8-sep-14') in SSWIDL
the parameters are: solar radius, B0, P in rad (57.3 degree)
读写文件
openw,lun,'I:\DATA\20031029\LASCO\jpg32\2\cme_core1.dat',/get_lun; 写文件
printf,lun,h,gifile2
;h,gifile2为数组名
free_lun,lun
openr,lun,'n:\data\20031029\lasco\jpg32\4\cmes.dat',/get_lun;
读文件
readf,lun,cms,time12
;cms, time12为数组名
free_lun,lun
rename a file: file_move,filar,filar2 ;filar---original fila, filar2---object file
change directory: cd,'e:\20150106'
读SOHO/EIT文件: fit_eit.pro
EIT 195 绿: loadct 8
linnux
读磁场像对齐切边画轮廓: dat_dad.pro
对齐图像: acpole,dat0,dat1,x,y ;dat0是参考图像
移动图像: image=shift (image, x,y)
x: 负---左, 正---右, y: 负---下, 正---上
在同一个窗中画3*2个图: !p.multi=[0,3,2]; 3列,2行
显示顺序: tvscl,data1,0
确定画图的位置: !p.position=[0.1,0.1,0.9,0.55]
启用英文字符集(idl help): export LC_ALL=en_US
生成频谱分布数组: hist=histogram(data,min=0,max=100,binsize=1)
binsize步长,data原始数组
产生横坐标数组: bins=finggen(n_element(hist))+min(data)
画直方图: plot, bins,hist,psym=10,xtitle='frequency', ytitle='density'
extrac: 提取部份Z数组
b=extrac(a,m1,n1,m2,n2) m1,n1起始行列, m2,n2 增量
给数组赋值: a(200:500,200:400)=max(a)
b(100:200,*)=0 ;* 整列
200-500: x范围, 200-400: y范 围
提取三维数组:all=extrac(img,0,200,600,3,200,200)
不同维数数组赋值:dat(*,*,*,i)=all
做平滑: dat=smooth(dat,5)
判断语句
IF (A EQ 2) AND (B EQ 3) THEN BEGIN
PRINT, 'A = ', A
PRINT, 'B = ', B
ENDIF ELSE BEGIN
IF A NE 2 THEN PRINT, 'A <> 2' ELSE PRINT, 'B <> 3'
ENDELSE
mo='dec'
case mo of
'jan': mon='01'
'feb': mon='02'
'mar': mon='03'
'apr': mon='04'
'may': mon='05'
'jun': mon='06'
'jul': mon='07'
'aug': mon='08'
'sep': mon='09'
'oct': mon='10'
'dec': mon='12'
'nov': mon='11'
endcase
调黑白
device,decompose=0
tek_color
loadct,0
调出色彩
tvscl,dist(400,400)
device,decompose=0
xloadct
;device,decompose=1
a=finggen(9)
plot,a,color=200
手动填写刻度(plot参数) xtickname=['12:00','12:30','13:00','13:30','14:00','14:30','15:00']
加彩色: idl>xloadct
在IDL提示符下执行命令: $ls
dat_dad.pro 对齐, 切齐后画轮廓
打开对话框: filename=dialog_pickfile(/read,filter=['*.fit'])
plot
轴标度字体变粗: font=1,charsize=1.2
轴变粗: !x.thick=1.5
!x.ticks=5 将X轴分为5段
!x.minor =5 每段5个小刻度
!x.range=[0,260]
设定取值范围
!y.range=[0,260]
!x.margin=0
边界为零
!y.margin=0
!x.ticks=1
无刻度
!y.ticks=1
!x.tickname=['12:00','12:30','13:00','13:30','14:00','14:30','15:00'] 系统刻度名称(单独语句)
!x.tickname=' '
无刻度数字
!y.tickname=' '
!x.style=1
严格按取值范围画轴
!y.style=1
!x.style=4
无X轴
s2 -----(s!E2!N) !D上角标 !I--下角标 !N恢复正常
显示字体和大小: !p.font=1
device,set_font='Times',/tt_font
xyouts, 430, 540,ti1,charthick=1,CHARSIZE = 2,color=255,/device
FOR LINUX
防止显示的图被擦: IDL>device,retain=2
SDO AIA HMI download format: hmi.M_45s[2014.09.08_01:30:00_TAI/30m], aia.lev1_12s[2014.09.08_01:30/30m][171,304]
read_sdo,filament,index,data
hmi fits file is compressed, and rotate(data,2)
读全日面像,画等值轮廓: fila.pro
读全日面像fit文件显示原大小: fital.pro
读全日面像fit文件显示大小(512*512): fita5.pro 太阳像直径: 488 pix
读全日面像fit文件显示原大小,对齐后选框: fital4.pro
读磁场fit文件显示原大小: hr_mag.pro
视场大小: 3.75*2.81角分
将gif文件转为ps文件: gif_ps.pro
将bmp文件转成ps文件: bmp_ps.pro
读mdi磁图(512*512) mdi.pro
读MDI速度场: MDI1 显示局部像
将H-ALPHA全日面像加红色: fitar.pro