1 / 27

第六章 数据的图形显示和输出

第六章 数据的图形显示和输出. 1. 绘制线 PLOT 2. 绘制多线 OPLOT 3. 绘制文本 XYOUTS 4. 绘制带误差棒的数据图形 5. 在 PostScript 设备上显示图像. 1. 绘制线 PLOT. ● 格式: PLOT, [X,] Y [, 关键字 ] 功能:在当前窗口中,按照指定的格式绘制直线或者曲线。 IDL> x = FINDGEN(101)*(0.01*2.0*!PI) & y = SIN(x) IDL> PLOT, x, y 图 1.1

Download Presentation

第六章 数据的图形显示和输出

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第六章数据的图形显示和输出

  2. 1.绘制线PLOT 2.绘制多线OPLOT 3.绘制文本XYOUTS 4. 绘制带误差棒的数据图形 5. 在PostScript设备上显示图像

  3. 1. 绘制线PLOT ●格式:PLOT, [X,] Y [, 关键字] 功能:在当前窗口中,按照指定的格式绘制直线或者曲线。 IDL> x = FINDGEN(101)*(0.01*2.0*!PI) & y = SIN(x) IDL> PLOT, x, y 图1.1 IDL> PLOT, x, SIN(x),THICK = 5图1.2 IDL> PLOT, x, x^3, THICK = 3,/YLOG图1.3 IDL> PLOT, x, SIN(x), THICK = 2,MIN_VALU=-0.5, MAX_VALUE=0.5图1.4 ◆BACKGROUND=color_index:用于设置绘制时的背景颜色。在伪彩模式下,color_index为0~40的颜色表;在真彩模式下,color_index为0 ~‘FFFFFF’XL的RGB颜色值。默认值为黑色背景。该值存放在系统变量!P.BACKGROUND中。 ◆COLOR=value:用于设置绘制时的前景颜色。在伪彩模式下,color_index为0~40的颜色表;在真彩模式下,color_index为0 ~‘FFFFFF’XL的RGB颜色值。其默认值为黑色背景。该值存放在系统变量!P.COLOR中。 例如:利用真彩模式,在红色背景下绘制蓝色正弦曲线,可以使用如下命令。 IDL> DEVICE, DECOMPOSED = 1 IDL> x = FINDGEN(101)*(0.01*2.0*!PI) IDL> PLOT, x, SIN(x),BACKGROUND = '0000FF'XL, COLOR = 'FF0000'XL

  4. ●格式:PLOT, [X,] Y [, 关键字] 功能:在当前窗口中,按照指定的格式绘制直线或者曲线。 ◆PSYM=integer{0 to 10}:按照指定的图形符号绘制数据点。代码的含义如下: 0  用线绘制  1  加号  2  星号   4  菱形  5  三角形 6  正方形   7  交叉号 8  用户定义  9  未定义 10   柱状图 注意:正代码是指仅在每一个数据点绘制符号;负代码是指在每一个数据点绘制符号的同时,再用线把绘制点连接起来。 例如:绘制0~2π的正弦曲线,其中绘制点使用正方形,并且用线连接起来。IDL> x = FINDGEN(101)*(0.01*2.0*!PI) & PLOT, x, SIN(x),PSYM=-6 ◆SYMSIZE=value:用于设定PSYM指定的符号的大小。 ◆LINESTYLE={0 | 1 | 2 | 3 | 4 | 5}:按照指定的线型绘制线。代码的含义如下: 0  实线         1  点         2  虚线  3  点虚线        4  点点虚线      5  长虚线 例如:绘制0~2π的点点虚线正弦曲线。可以使用如下命令。 IDL> x = FINDGEN(101)*(0.01*2.0*!PI) & PLOT, x, SIN(x),LINESTYLE=4

  5. ●格式:PLOT, [X,] Y [, 关键字] 功能:在当前窗口中,按照指定的格式绘制直线或者曲线。 ◆/NOERASE:在当前窗口中绘制新图形时,不擦除原内容。默认擦除原内容 例如:在当前窗口中,绘制0~2π的正弦曲线和余弦曲线。 IDL>x = FINDGEN(101)*(0.01*2.0*!PI) IDL>PLOT, x, SIN(x) & WAIT, 2 & PLOT, x, COS(x), /NOERASE ◆TITLE=string:给绘图区绘制的图形添加一个标题。 ◆SUBTITLE=string:给绘图区绘制的图形添加一个副标题。 例如:绘制0~2π的正弦曲线,并给图形添加一个内容为My Sin(x)的标题。IDL>x = FINDGEN(101)*(0.01*2.0*!PI) & PLOT, x, SIN(x),$ TITLE='title',SUBTITLE='subtitle'

  6. ●格式:PLOT, [X,] Y [, 关键字] 功能:在当前窗口中,按照指定的格式绘制直线或者曲线。 ◆POSITION=[X0, Y0, X1, Y1]:把图形定位绘制到[X0, Y0, X1, Y1]指定的区域。 图形的绘图区域存储在系统变量!P.POSITION。 例如:绘制0~2π的正弦曲线和余弦曲线,并绘制到指定的窗口中. WINDOW, /FREE, XSIZE=640, YSIZE=512 & x = FINDGEN(200)*0.1 PLOT, x, SIN(x), POSITION=[0.1, 0.1, 0.45, 0.9] PLOT, x, COS(x), POSITION=[0.55, 0.1, 0.9, 0.9], /NOERASE图1.6 格式:!P.MULTI=[j, k, l, m, n]用法如下: !P.Multi[0]:给出在显示窗口中需要绘制的剩余的图形数目。其默认值为0。 注意:在绘制一个图形时,用户根据需要可以选择关键字/NOERASE。 !P.Multi[1]:给出绘制图形的列数。 !P.Multi[2]:给出绘制图形的行数。 !P.Multi[3]:给出在Z方向上叠加绘制图形的数目,仅适用三维坐标 !P.Multi[4]:给出绘图方式。按行显示图形=0,按列显示图形=1。 例如:在当前窗口中绘制四个图形。可以使用如下命令。 IDL>!P.MULTI=[0, 2, 2, 0, 0] & x = FINDGEN(200)*0.1 IDL>PLOT, x, SIN(x) & PLOT, x, SIN(x)*x^2 IDL>PLOT, x, RANDOMU(1, 200)*x, PSYM=1 PLOT, x ,4.0*!PI*x*0.1, /POLAR图1.7

  7. ◆/NODATA:是指只绘制坐标轴,不绘制数据点。◆/NODATA:是指只绘制坐标轴,不绘制数据点。 ◆CHARSIZE=value:用于设置绘制注释和标注字体的大小。 ◆{X | Y | Z}CHARSIZE=value:设置X、Y和Z在轴上注释和标注字体的大小 ◆CHARTHICK=integer:用于设置绘制注释和标注字体的粗细。 ◆FONT=integer:用于设置绘制注释和标注字体所使用的字体系统。-1是指Hershey矢量字体;0是指设备字体系统;1是指TrueType字体系统。默认:-1 ◆TICKLEN=value:用于设置绘制轴注释和标注中小刻度的尺度。 例如:绘制0~2π的正弦曲线,并给绘制的图形添加一个内容为My Sin(x)的标题和一个内容为Happy You的副标题。 x = FINDGEN(101)*(0.01*2.0*!PI) PLOT,x,SIN(x),TITLE='My Sin(x)',SUBTITLE='Happy You',TICKLEN = -0.02 ◆{X | Y | Z}GRIDSTYLE=integer{0 to 5}:设置X、Y和Z上刻度的栅格的类型。其取之范围和线型与LINESTYLE相同。 ◆{X | Y | Z}MINOR=integer:设置X轴、Y轴和Z轴上最小刻度间隔的数目。 ◆{X | Y | Z}RANGE=[min, max]:设置X轴、Y轴和Z轴的最小和最大范围。 例如:按指定的范围绘制正弦曲线。可以使用如下命令。 IDL> x = FINDGEN(200)*0.1 & PLOT, x, SIN(x), XRANGE=[0, 10.5]

  8. TICKLEN = -0.2 TICKLEN = -0.02 TICKLEN = 0.02

  9. ●格式:PLOT, [X,] Y [, 关键字] ◆{X | Y | Z}STYLE=value:设置X轴、Y轴和Z轴的类型。 1 由{X | Y | Z}RANGE指定轴的精确范围  2 在轴范围的每一边留有空余 4  不显示整个坐标轴          8 只在左边或下边显示坐标轴 16  不把Y轴的起始值强行规定为0。 技巧:{X | Y | Z}STYLE设定的值可以以加的形式出现,来实现多重功能。如:YSTYLE=2+8。 例如:按指定的范围绘制正弦曲线。可以使用如下命令。 IDL>x = FINDGEN(200)*0.1 IDL>PLOT, x, SIN(x), XRANGE=[0,13.5], XSTYLE=1, YRANGE=[-2.5, 2.5], YSTYLE=1 IDL>PLOT, x,SIN(x),XSTYLE=8, YRANGE=[-2, 2], YSTYLE=1+8 ◆{X | Y | Z}THICK=value:设置X、Y和Z轴和刻度的粗细。其默认值为:1。 例如:按指定的字体和粗细绘制正弦曲线。可以使用如下命令。 IDL> x = FINDGEN(200)*0.1 IDL> PLOT, x, SIN(x), TITLE='SIN(X)', SUBTITLE='IDL PLOT' $ , CHARSIZE=1.25, FONT=1, LINESTYLE=3, THICK=2.0, PSYM=-1

  10. ●格式:PLOT, [X,] Y [, 关键字] 功能:在当前窗口中,按照指定的格式绘制直线或者曲线。 ◆{X | Y | Z}TICKFORMAT=string:给出X轴、Y轴和Z轴上刻度标注的格式代码,从而设定刻度标注的具体格式。 例如:绘制X轴和Y轴的标注格式分别为F6.2和F7.2。 IDL> x = FINDGEN(200)*0.1 图1.9 IDL> PLOT, x, SIN(x), XTICKFORMAT='(F6.2)', YTICKFORMAT='("$", F7.2)'

  11. XTICKFORMAT='(F6.2)', YTICKFORMAT='("$", F7.2)' XTICKFORMAT='(F6.4)', YTICKFORMAT='("$", F7.4)' XTICKFORMAT='(F6.3)', YTICKFORMAT='("$", F7.3)'

  12. ●格式:PLOT, [X,] Y [, 关键字] ◆{X | Y | Z}TICKINTERVAL= value:同{X | Y | Z}TICKS,但是其优先级高于{X | Y | Z}TICKS。 ◆{X | Y | Z}TICKLEN=value:设置X轴、Y轴和Z轴的刻度的长度。默认值为0.02。 ◆{X | Y | Z}TICKNAME=string_array:设置X轴、Y轴和Z轴的刻度的标注。 ◆{X | Y | Z}TICKS=integer:设置X轴、Y轴和Z轴的主刻度的个数。 ◆{X | Y | Z}TICKV=array:设置X轴、Y轴和Z轴的刻度的值。 ◆{X | Y | Z}TITLE=string:设置X轴、Y轴和Z轴的标题。

  13. 设置X轴的主刻度的个数 ●格式:PLOT, [X,] Y [, 关键字] 例如:按指定的坐标格式绘制一条曲线。可以使用如下命令。 IDL> x = FINDGEN(11) IDL> PLOT, x+5, XTICKS=6, XTICKV=[1,2,6,7,10,12], YTICKS=6, $ YTICKV=[1,2,4,6,8,10], YTICKNAME=['A', 'B', 'C', 'D', 'E', 'F'] 设置X轴的刻度的值 设置Y轴的刻度的标注

  14. 2. 绘制多条线OPLOT ●格式:OPLOT, [X,] Y [, 关键字] 功能:在当前窗口中,按指定格式在同一个坐标系中绘制多个直线或者曲线 ◆OPLOT的使用方法与PLOT的用法基本相同,其不同之处是OPLOT可以在同一个坐标系中绘制多个直线或者曲线。 注意:在绘图时,X、Y被转换为双精度浮点型数据。 例如:在同一坐标系绘制0~2π的正弦曲线、余弦曲线和二者的乘积。 IDL> x = FINDGEN(101)*(0.01*2.0*!PI) IDL> PLOT, x, SIN(x) & OPLOT, x, COS(x) IDL> OPLOT, x, SIN(x) * COS(x)

  15. 3.绘制文本XYOUTS ●格式:XYOUTS, [X, Y,] String [, COLOR=value] [, FONT=integer] 功能:在当前窗口中,按照指定的位置输出文本内容的值。 如果当前窗口不存在,则系统按照默认设置创建一个默认窗口。 ●格式:XYOUTS, [X, Y,] String ◆X:绘制文本信息的X轴向上的位置。当文本内容String为数组时,X可为数组 ◆Y:绘制文本信息的Y轴向上的位置。当文本内容String为数组时,Y可为数组 ◆String:给出绘制文本信息的内容。 ◆XYOUTS的使用方法与PLOT的用法基本相同,其不同之处是XYOUTS可以在同一个窗口中,绘制任意的文本信息。 ◆连续使用XYOUTS时,绘制内容会在同一个窗口输出,并不擦除原有的内容 注意:在绘图时,X、Y、Z被转换为双精度浮点型数据。 例如:如下命令,在当前窗口的指定位置输出指定的文本信息。 XYOUTS, 100, 100, 'This is text' XYOUTS, [0, 200, 250],[200, 50, 100],['This', 'is', 'text'] 坐标位置

  16. 4.绘制带误差棒的数据图形 IDL中有几个内建的过程可以画误差棒,但它们缺乏一些重要的选择性。《IDL可视化入门与提高》提供了一个关于绘制误差棒数据图形的过程函数,格式如下: err_plot,x,y-err,y+err,关键字 其中,err_plot可以接受plots的关键字。 例如: x=findgen(10) y=randomu(-1L,10)+10 plot,x,y,yrange=[9.5,11.5] err=0.1 err_plot,x,y-err,y+err

  17. 5.在PostScript设备上显示图像 PRO OutToPostScript entry_device=!d.name set_plot,’PS’ device,filename=‘D:/file.ps’ x=indgen(10) y=x plot,x,y,/normal device,/close_file set_plot, entry_device END

More Related