Igor Pro实用教程:图表绘制、数据分析与程序设计
上QQ阅读APP看书,第一时间看更新

2.1 曲线

2.1.1 绘制曲线

一维wave的绘制叫作曲线绘制。首先创建一个要绘制的数据。在命令行窗口中执行下面的命令:

      Make/N=100/O gaussfun, lorfun
       SetScale/I x, -1,1, gaussfun, lorfun
      gaussfun=exp(-x∗x/0.01)
       lorfun=1/((x∗x)+0.04)
      Make/N=10 XY_Y={4,6,8,4,6,7,9,1,4,3}
      Make/N=10 XY_X={3,5,1,4,7,5,8,6,9,2}

在数据浏览器中设定当前目录为新创建wave gaussfun所在的数据文件夹。选择菜单命令【Windows】|【New Graph】,打开【New Graph】对话框。对话框中【Y Wave(s)】区域列出当前目录下所有一维数据。【X Wave】区域同样列出当前目录下所有一维数据。二者的区别是【X Wave】区域的wave被用来当作x坐标。注意,【X Wave】可以选择_calculated_项,表示使用储存在wave中的x坐标信息来绘制曲线。这里,在【Y Wave(s)】区域选择gaussfun, 【X Wave】区域选择_calculated_,单击【Do It】按钮,即可以完成曲线图的绘制,如图2-1所示。

图2-1 一维曲线绘制对话框(a)和绘图示例(b)

关于【New Graph】对话框的说明如下:

(1)可以按Shift键选择多个wave,此时将绘制多条曲线。

(2)【More Choices】按钮:单击此按钮可出现更多的绘制选项。如果同时绘制多个XY型曲线,或者只绘制曲线的一部分,或者为不同的曲线指定不同的坐标轴,可以按下此按钮,如图2-2所示。

图2-2 在绘图对话框显示更多选项

在【More Choices】模式下,按【Add】按钮,对应的选择如图2-2所示。方括号表示要绘制数据点的范围。在【Y Axis】和【X Axis】下拉菜单选择曲线的坐标轴,也可以新建一个坐标轴。

(3)【From Target】复选框:控制【Y Wave(s)】和【X Wave】区域中显示的内容,如果选中此复选框,内容为显示在最顶层窗口的wave或所在目录,否则列出当前目录下所有的一维wave。如果想绘制当前table中的wave,就可以使用此选项,而无须去数据文件夹寻找该wave。Igor很多的操作窗口都有这个复选框,含义都是这样的。

(4)【Axis】下拉列表框:设置坐标轴。不设置将默认使用left和bottom坐标轴。left和bottom是Igor内建的坐标轴,left默认显示在曲线图的左边,bottom默认显示在曲线图的底部。

单击【Axis】下拉列表框,可以选择right、top坐标轴。right默认显示在曲线图的右边,top默认显示在曲线图的上部。还可以选择L=VertCrossing、B=Horizcrossing坐标轴。

left、right、bottom和top属于固定位置坐标轴,表示坐标轴相对于绘图区域是固定的,移动坐标轴将改变绘图区域。而坐标轴VertCrossing和Horizcrossing为自由坐标轴,坐标轴可以在整个绘图区域自由移动。

通过【Axis】下拉列表框中的New选项可以打开【New Free Axis】对话框,选中【Left】或者【Right】单选按钮并输入名字,可以创建自定义坐标轴。Left(bottom)及Right(top)表示新坐标轴的方向和位置。创建新坐标轴后曲线图将使用新建坐标轴。自定义坐标轴是自由坐标轴,如图2-3所示。

图2-3 新建自由坐标轴

(5)【Swap Trace X &Y Axes】复选框:交换xy坐标轴方向(但注意曲线的实际内容没有改变,只是显示的方向改变)。

(6)【Title】:Graph的标题。注意,标题不是Graph的名字。通过命令行或者程序操作Graph窗口时使用名字而不是标题。Graph窗口的标题是可以一样的,但名字是独一无二的。执行菜单命令【Windows】|【Control】|【Window Controls】(或者按Ctrl+Y键)可以打开【Window Control】对话框,这里可以看到Graph标题和名字的区别,如图2-4所示。

图2-4 Graph标题和名字的区别

(7)【Style】下拉列表框:选择绘制曲线的样式。通过下拉列表可以指定一个自动绘制样式脚本(Macro),自动设置曲线的颜色、线型、图标等。曲线绘制完毕后,可利用【Window Control】提供的【Create Style Macro】生成该曲线对应的样式脚本。利用样式脚本可以快速地绘制指定样式的曲线图。

(8)在曲线图最靠近底部的文本框里,是自动生成的命令行。在【New Graph】对话框中的所有操作都被转化成命令行并显示在这个文本框里,单击【To Cmd Line】按钮将命令行复制到命令行输入窗口。【To Clip】按钮将命令复制到剪贴板。

绘制曲线的关键命令是Display。因此,直接在命令行窗口输入Display也可以完成曲线图的绘制,如上面的例子可以通过命令行操作,具体的命令如下:

        Display gaussfun
        //绘制gaussfun曲线
        Display XY_Y vs XY_X as"mygraph"
        //绘制XY曲线并且设定graph标题为mygraph
        Display/L=newLeft/B=NewBottom gaussfun as"mygraph"
        //以新建自由坐标轴newLeft和NewBottom绘制gaussfun曲线
        Preferences 0;
        Display/L=NewLeft/B=NewBottom gaussfun as"mygraph";
        Graph1Style();
        Preferences 1;
        //以新建自由坐标轴newLeft和NewBottom为坐标轴绘制gaussfun曲线,并采用预定义样式
        Graph1Style

还可以在数据浏览器中直接右击对应的wave,选择【Display】命令进行绘制。

在实践中根据需要选择不同的方法。如仅仅为了显示曲线,在数据浏览器中使用右键是最有效的方法。如果需要显示多条曲线进行对比,对曲线显示进行精确的控制,就需要使用对话框的方式。熟练以后也可以通过编写程序来显示多条曲线。