“Coyote库”的版本间差异
无编辑摘要  | 
				|||
| (未显示4个用户的28个中间版本) | |||
| 第1行: | 第1行: | ||
==数组运算==  | 
|||
===setintersection,setunion,setdifference===  | 
|||
   ;   a = [2,4,6,8]  | 
|||
   ;   b = [6,1,3,2]  | 
|||
   ; SetIntersection(a,b) = [ 2, 6]       ; Common elements  | 
|||
   ; SetUnion(a,b) = [ 1, 2, 3, 4, 6, 8]  ; Elements in either set  | 
|||
   ; SetDifference(a,b) = [ 4, 8]         ; Elements in A but not in B  | 
|||
   ; SetIntersection(a,[3,5,7]) = -1      ; Null Set  | 
|||
==画图==  | 
|||
| ⚫ | |||
| ⚫ | |||
显示图像程序  | 
  显示图像程序  | 
||
/axes: 显示坐标轴,并且可用Xrange和Yrange来控制,同时显示xtitle,ytitle,title等设置  | 
  /axes: 显示坐标轴,并且可用Xrange和Yrange来控制,同时显示xtitle,ytitle,title等设置  | 
||
除了常用的关键词外,其它axes命令的关键词可以用axkeywords的方法进行[[IDL中的关键词继承|关键词继承]]  | 
|||
 cgimage,ima,xtitle='x',ytitle='y'/axes,axkewwords={xticks=3,yticks=3}  | 
|||
margin=0,可以用在显示多幅图像,结合!P.multi使用  | 
  margin=0,可以用在显示多幅图像,结合!P.multi使用  | 
||
| 第14行: | 第25行: | ||
/scale:   scale 图像值到颜色表  | 
  /scale:   scale 图像值到颜色表  | 
||
=== cgcolor ===  | 
|||
直接生成颜色的数值  | 
|||
| ⚫ | |||
== cgcolorbar ==  | 
  === cgcolorbar ===  | 
||
显示颜色表,  | 
  显示颜色表,  | 
||
| 第26行: | 第40行: | ||
== cgcContour ==  | 
  === cgcContour ===  | 
||
/fill  用颜色填充  | 
  /fill  用颜色填充  | 
||
| 第35行: | 第49行: | ||
===cgps_open,cgps_close===  | 
|||
== ps_start,ps_end ==  | 
  |||
旧版本中,这两个程序是:[[ps_start,ps_end]]  | 
|||
*可以使用/encapsulated开关生成eps图  | 
|||
可以替代psopen,psclose  | 
  |||
*用cgPS_Close, /PNG,可同时多生成一个同名的png图  | 
|||
*似乎在nomatch下,和一些关键词不兼容,cgplot甚至不如plot  | 
|||
生成的ps图和显示图完全一致;默认的是LETTER,单位inch,支持彩色;默认的字体,粗细等效果相当好  | 
  |||
| ⚫ | |||
支持PS文件的设置参数:keywords = PSConfig()     | 
  |||
| ⚫ | |||
可定制XSIZE,YSIZE等参数  | 
  |||
 例cgplot,indgen(10),color='red'  | 
|||
| ⚫ | |||
/Metric 选项,使用公制,就默认是A4 paper,单位cm  | 
  |||
| ⚫ | |||
===Keywords===  | 
|||
*psym: in, optional, type=integer  | 
|||
Any normal IDL PSYM values, plus any value supported by the Coyote Library  routine SYMCAT. An integer between 0 and 46.  | 
|||
*symcolor: in, optional, type=string/integer, default='black'  | 
|||
| ⚫ | |||
If this keyword is a string, the name of the symbol color. By default, 'black'.  Otherwise, the keyword is assumed to be a color index into the current color table.  | 
|||
*symsize: in, optional, type=float, default=1.0  | 
|||
| ⚫ | |||
The symbol size.  | 
|||
| ⚫ | |||
*color 可以调用颜色表loadct之后,color=数字(0-255)'''经过测试这个数字一定需要简单整数'''  | 
|||
| ⚫ | |||
 loadct,13  | 
|||
| ⚫ | |||
 cgplot,indgen(10),color=40  | 
|||
 cgplot,indgen(10),color=40L  | 
|||
结果是不一样的  | 
|||
== cgwindow ==  | 
  === cgwindow ===  | 
||
生成一个新的图形窗口,可调整大小,有菜单可导出成任何格式文件。  | 
  生成一个新的图形窗口,可调整大小,有菜单可导出成任何格式文件。  | 
||
在cgplot等命令中,加上关键字  | 
  在cgplot等命令中,加上关键字window 则可保证画图在cgwindow产生的窗口中  | 
||
*如何指定 window/cgwindow  | 
|||
:在原生IDL里面,用window,n ; wset n来制定window  | 
|||
:cg系统里面,  | 
|||
 cgwindow,winid=0  | 
|||
 cgset,32 ;这时候不是0具体是多少可以这样  | 
|||
 wid=cgquery()  | 
|||
  cgset,wid[0]  | 
|||
 cgplot,indgen(10),/window ;必须带window关键词  | 
|||
== cgtext==  | 
  === cgtext===  | 
||
替代xyouts。  | 
  替代xyouts。  | 
||
关键词Alignment,设置0,0.5,1 ,分别表示左,中,又对齐  | 
  关键词Alignment,设置0,0.5,1 ,分别表示左,中,又对齐  | 
||
*例1,在屏幕的固定比例上显示字符,与图形的frame无关  | 
|||
 IDL> cgText, 0.5, 0.5, 'This is sample text', ALIGNMENT=0.5, /NORMAL  | 
|||
*例2,用鼠标选取显示字符的地方  | 
|||
 IDL> cgText, /PLACE, 'Use the cursor to locate this text', COLOR='dodger blue'  | 
|||
=== cghistoplot ===  | 
|||
[[直方图#cghistoplot|直方图]]  | 
|||
| ⚫ | |||
== 注 ==  | 
  |||
| ⚫ | |||
**astro_lib中的legend改为AL_LEGEND,该程序可用来生成图例,原因是IDL8.0中有内禀的legend函数  | 
  |||
2016年6月12日 (日) 05:36的最新版本
数组运算
setintersection,setunion,setdifference
; a = [2,4,6,8] ; b = [6,1,3,2] ; SetIntersection(a,b) = [ 2, 6] ; Common elements ; SetUnion(a,b) = [ 1, 2, 3, 4, 6, 8] ; Elements in either set ; SetDifference(a,b) = [ 4, 8] ; Elements in A but not in B ; SetIntersection(a,[3,5,7]) = -1 ; Null Set
画图
cgimage
显示图像程序
/axes: 显示坐标轴,并且可用Xrange和Yrange来控制,同时显示xtitle,ytitle,title等设置 除了常用的关键词外,其它axes命令的关键词可以用axkeywords的方法进行关键词继承
cgimage,ima,xtitle='x',ytitle='y'/axes,axkewwords={xticks=3,yticks=3}
margin=0,可以用在显示多幅图像,结合!P.multi使用
multimargin=[left,top,right,bottom] 可以更灵活的控制
position=[x0,y0,x1,y1] :图像显示的位置
/scale: scale 图像值到颜色表
cgcolor
直接生成颜色的数值
例:plot,indgen(10),color=cgcolor('red')
cgcolorbar
显示颜色表,
range=[min,max]控制范围
position=[x0,y0,x1,y1] :控制位置
/vertical 显示竖直方向的颜色表,默认是水平的
cgcContour
/fill 用颜色填充
/overplot 可以overplot在前面的plot之上
/onimage 显示在之前的图上面
cgps_open,cgps_close
旧版本中,这两个程序是:ps_start,ps_end
- 可以使用/encapsulated开关生成eps图
 - 用cgPS_Close, /PNG,可同时多生成一个同名的png图
 
- 似乎在nomatch下,和一些关键词不兼容,cgplot甚至不如plot
 
cgplot
可完全替代plot,可默认使用字符串表示的简单颜色;
例cgplot,indgen(10),color='red'
/overplot标签,继续plot,相当于plots 还有一个cgplots,类似于plots
Keywords
- psym: in, optional, type=integer
 
Any normal IDL PSYM values, plus any value supported by the Coyote Library routine SYMCAT. An integer between 0 and 46.
- symcolor: in, optional, type=string/integer, default='black'
 
If this keyword is a string, the name of the symbol color. By default, 'black'. Otherwise, the keyword is assumed to be a color index into the current color table.
- symsize: in, optional, type=float, default=1.0
 
The symbol size.
- color 可以调用颜色表loadct之后,color=数字(0-255)经过测试这个数字一定需要简单整数
 
loadct,13 cgplot,indgen(10),color=40 cgplot,indgen(10),color=40L
结果是不一样的
cgwindow
生成一个新的图形窗口,可调整大小,有菜单可导出成任何格式文件。 在cgplot等命令中,加上关键字window 则可保证画图在cgwindow产生的窗口中
- 如何指定 window/cgwindow
 
- 在原生IDL里面,用window,n ; wset n来制定window
 - cg系统里面,
 
cgwindow,winid=0 cgset,32 ;这时候不是0具体是多少可以这样 wid=cgquery() cgset,wid[0] cgplot,indgen(10),/window ;必须带window关键词
cgtext
替代xyouts。 关键词Alignment,设置0,0.5,1 ,分别表示左,中,又对齐
- 例1,在屏幕的固定比例上显示字符,与图形的frame无关
 
IDL> cgText, 0.5, 0.5, 'This is sample text', ALIGNMENT=0.5, /NORMAL
- 例2,用鼠标选取显示字符的地方
 
IDL> cgText, /PLACE, 'Use the cursor to locate this text', COLOR='dodger blue'
cghistoplot
- 注:astro_lib的最新版已经完全基于最新的Coyote库