IDL 对象图形法 二维图形类(四):坐标轴对象 IDLgrAxis 用例解析

mac2025-06-24  14

一、基本使用

pro GrAxis;IDL坐标轴对象用例详解 oWindow=IDLgrWindow(DIMENSIONS=[400,200]) oView=IDLgrView(VIEWPLANE_RECT=[-10,-1,400,2]);距左侧边框10个单位,距底部1个单位.视图宽度400,高度2 oModel=IDLgrModel() oView.Add,oModel oWindow.SetProperty,GRAPHICS_TREE=oView ;0-x轴,1-y轴,2-z轴,范围是[0,180],线粗为2,红色 oAxis=IDLgrAxis(0,RANGE=[0,180],LOCATION=[0,-.5],THICK=2,COLOR=[255,0,0]) oModel.Add,oAxis oWindow.Draw end

上述代码中的 oView=IDLgrView(VIEWPLANE_RECT=[-10,-1,400,2]) 中的 VIEWPLANE_RECT=[-10,-1,400,2] 的意义我还没有太明白,就不乱写误人子弟了。“距左侧边框10个单位,距底部1个单位.视图宽度400,高度2”这个是我试出来的,不过似乎不是很正确。

二、属性设置

(1)调整坐标轴刻度

oAxis.SetProperty,MAJOR=10,MINOR=5,TICKDIR=1 oWindow.Draw

10个大刻度线,中间5个小刻度线,tickdir 1-控制刻度线在x轴下,0-控制刻度线在x轴上

(2)调整刻度文字的位置

oAxis.SetProperty,TEXTALIGNMENTS=[0.5,1] oWindow.Draw

TEXTALIGNMENTS=[水平方向,竖直方向]

(3)添加标题并微调刻度值(我已经把刻度值方向调为向上了,即 TICKDIR=0)

oText=IDLgrText('X Axis',COLOR=[0,0,0]) oAxis.SetProperty,TITLE=oText,TICKVALUES=[0,60,120,150,180] oWindow.Draw

TICKVALUES 是大刻度值的具体数值

(4)坐标轴文字基线

oAxis.SetProperty,TEXTBASELINE=[-1,0,0] oWindow.Draw

(5)使用自定义坐标值

oTickText=IDLgrText(['A','B','C','D','E'],COLOR=[0,0,255]) oAxis.SetProperty,TEXTBASELINE=[1,0,0],TICKTEXT=oTickText,/USE_TEXT_COLOR oWindow.Draw

USE_TEXT_COLOR 关键字控制是否显示文字对象颜色

 

最新回复(0)