资源描述:
《第三章 编写IDL程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章数据的图形显示26.1绘图概述26.1.1线画图26.1.2重叠绘图36.1.3散点图36.1.4极线图(极坐标下)36.1.5条形图36.1.6图形坐标系46.1.7坐标变换换函数46.1.7.1坐标变换方程46.1.7.2坐标变换函数56.2图形定位66.2.1指定绘图位置66.2.3定位多个图形76.3定制线绘图76.3.1常用关键字76.3.2定制坐标轴的关键字86.3.3设置轴的范围和类型96.3.4创建轴96.3.6对数轴106.3.6刻度和标注的定制106.4绘彩色图116.4.1索引彩色绘图116.
2、4.2真彩色绘图116.6误差棒、直方图126.7等值线图126.7.1Contour过程126.7.2用不规则空间分布数据绘制等值线136.7.3填充等值线图136.8网格曲面图和阴影曲面图136.8.1网格曲面136.8.2不规则间隔数据集156.8.3阴影曲面166.8.4叠置绘图166.9地图176.9.1设置窗口的地图投影176.9.2设置地图投影186.9.3指定地图范围196.9.4大陆轮廓线196.9.5地图经纬网206.9.6地图投影上的等值线图206.9.7在地图投影中显示规则网格图像2122第六章数
3、据的图形显示6.1绘图概述IDL中创建图形的过程如下表所示:表6.1画图过程过程名称功能过程名称功能Plot绘制线画图Contour绘等值线图Oplot将线画图重叠到Plot绘制的图形上Surface绘网格曲面Plots在3个坐标系统之一上绘线画图Shade_surf绘阴影曲面Axis创建一个新轴6.1.1线画图过程Plot是IDL中最常用的绘制线画图的程序,语法为:Plot,x,y其中x是横坐标矢量,y是纵坐标矢量,(x,y)取笛卡尔坐标系下的坐标。若省略x,则横坐标取y数组的下标号。绘制0~2的正弦曲线:IDL>x=
4、findgen(101)*(0.01*2.0*!pi)IDL>y=sin(x)IDL>plot,x,y用y的下标号做x坐标绘正弦曲线:IDL>plot,yPlot默认的执行过程如下:删除当前窗口中的内容计算数据的坐标画坐标轴、轴标注和刻度将每个数据坐标点用线连起来Plot过程可以接受大量的署名参数,几个常用署名参数见下表:表6.2Plot的常用署名参数参数署名功能/plolar绘极线图(默认用笛卡尔坐标绘图)/ynozero当所有点为正时,y轴最小值不为0(默认:当所有点为正时,y轴最小值为0)min_value图中的最
5、小zong坐标(默认:最小的数据)max_value图中的最大zong坐标(默认:最大的数据)Plot每次绘图总是先擦除窗口中的内容,然后再绘图,若要保存现有图形绘图,应使用Oplot过程。226.1.2重叠绘图过程Oplot在当前窗口中绘图,保存窗口中的原有图形,不绘制坐标轴,用最近一次Plot调用形成的数据变换成坐标的计算公式计算绘图坐标。Oplot的语法及参数与Plot相同。在Plot绘制的图形中补绘一条余弦曲线:IDL>x=findgen(101)*(0.01*2.0*!pi)IDL>plot,x,sin(x)I
6、DL>oplot,x,cos(x)6.1.3散点图过程Plot的参数psym指定绘图符号,用于绘制散点图,如用+号点缀一条直线:IDL>plot,findgen(20),psym=1+号之间用直线连接起来:IDL>plot,findgen(20),psym=-1Psym的取值如下表所示,正值仅在每个点位绘制符号,负值绘制符号且用直线依次连接全部符号。用户可以使用Usersym创建自定义符号。表6.3Psym的取值取值符号取值符号0,缺省值无,用线连接数据点5三角形1+6正方形2*7交叉号3点8用户定义4菱形10直方图,-
7、10不能使用6.1.4极线图(极坐标下)/Polar关键字指定Plot过程绘制极线图。语法是:plot,r,t,/polar其中r为径向矢量,t以弧度为单位的角度矢量。两个参数都不可缺省。绘一个半径为1的圆,由于(x,y)坐标使用不同的缩放因子,显示成椭圆:IDL>plot,replicate(1,62),findgen(62)*0.1,/polar用/iso指定(X,Y)坐标相同的缩放因子,则显示一个圆:IDL>plot,replicate(1,62),findgen(62)*0.1,/polar,/iso绘螺旋线:I
8、DL>plot,findgen(623),findgen(623)*0.1,/polar6.1.5条形图条形图可以用bar_plot过程创建。Probar_plot_test22sites=[20,44,102,235,350]years=['1995','1996','1997','1998','1999']bar