IgorPro程序设计实战——手把手教你掌握100个精彩案例

IgorPro程序设计实战——手把手教你掌握100个精彩案例"

作者:贾小文
ISBN:9787302541080
定价:¥99
字数:千字
页数:
出版时间:2020.02.01
开本:
版次:1-1
装帧:
出版社:清华大学出版社
简介

本书精选了100个编程案例,共分为4章,涵盖数据可视化、数据拟合、数据分析、程序设计等内容,每个案例均由应用情景、程序代码、程序分析和实战应用四部分组成。部分案例演示了Igor Pro下典型数据处理和程序设计技巧,重在功能介绍; 部分案例来源于数据处理实践,重在应用。读者可根据实际情况和需求进行学习和练习。附录简要介绍Igor Pro下程序设计的概念和基本方法,供读者参考。本书所有代码都在Igor 8下调试通过,如无特别指出,这些代码在早期的版本(如Igor 6和Igor 7)下也能使用。

本书可作为高等院校、科研机构等相关单位从事实验教学或者实验科学研究的教师、工程师的参考用书,也可作为高年级本科生和研究生实验数据分析和处理的参考用书。

前言

《Igor Pro实用教程》出版后,受到了广大读者的欢迎和好评。我也收到了很多热心读者对本书的反馈,看到很多读者能从中受益,我心里非常高兴和自豪。这同时也使我看到,与巨大的使用需求相比,关于Igor Pro使用介绍的资料是多么匮乏。《Igor Pro实用教程》是一个好的开端,但还是远远不够的。因此,我萌发了再继续写一本关于Igor Pro使用的书的念头。

Igor Pro是一款用于实验数据分析处理的软件,和其他的数据处理软件相比较,Igor Pro最大的特点是将编写程序和数据处理及可视化完美地融合在一起,可扩展性非常强。因此会编写程序是用好Igor Pro的基本要求。众所周知,学习编写程序最好的途径莫过于研究学习已有的范例。基于这个原因,我决定再编写一本通过案例介绍Igor Pro程序设计方法和技巧的书。这些案例是我多年使用Igor Pro的经验总结,应该说有较强的针对性和实用价值。每个案例都由应用情景、程序代码、程序分析和实战应用四部分组成。应用情景介绍了案例的应用背景,这些背景绝大多数来源于数据处理实践; 程序代码包括案例的完整代码,所有代码都经过反复调试,功能上尽可能完整独立,代码组织上尽可能合理科学; 程序分析对程序代码中关键部分进行分析,帮助读者理解和掌握程序设计思路和技巧; 实战应用则具体介绍案例中程序在实际数据处理中的使用。

除了数据处理的预设情景之外,每个案例还包括了Igor Pro内置函数和命令的典型使用方法。Igor Pro之所以强大,就是因为内置了大量功能强大且使用简单的数据分析处理、可视化函数和命令,合理地使用这些函数和命令,几乎可以实现任何可能的数据处理需求。读者在阅读本书时,应有意识地掌握这些函数和命令的使用。为了方便区分,本书中内置函数和命令都使用黑色加粗字体。

与《Igor Pro实用教程》比较,本书是进阶篇。如果说《Igor Pro实用教程》是内功心法,讲究内化于心,强调的是夯实基础; 本书则是身法招数,讲究外化于形,强调的是实战应用。因此,本书假定读者已经熟读《Igor Pro实用教程》,能够利用Igor Pro熟练地进行图表绘制,会用命令行窗口对数据进行操作,掌握基本的程序设计方法。

陆军军事交通学院基础实验中心贺秀良教授担任本书技术主审。陆军军事交通学院尹霖、邱成锋、赵云飞负责第1章数据可视化技术的审定,张金凤、范海英负责第2章数据拟合技术的审定,李霞、孙广平、王旭艳负责第3章数据分析处理技术的审定,邱文艳、丁娜负责第4章程序设计技术的审定,柏亚基负责附录部分内容的审定。陆军军事交通学院军事交通运输研究所孙丽霞负责本书的整体审定工作。陆军军事交通学院基础部主任、副教授阎文建在本书的编写过程中给予大力支持,在此一并表示谢意。

本书所有案例的源代码都可以通过清华大学出版社网站下载获取。

贾小文

2019年12月于天津

目录

第1章数据可视化

案例1显示一个wave

案例2向指定窗口添加一个wave

案例3替换指定窗口的wave

案例4在窗口上添加一条竖线

案例5堆叠显示所有曲线

案例6绘制个性化图标

案例7批量对多条曲线设置渐变色

案例8创建布里渊区

案例9绘制矢量图

案例10绘制电场线和等势线

案例11绘制氢原子电子云分布三维图

案例12绘制风玫瑰图

案例13绘制三维效果条形图

案例14绘制盒须图

案例15绘制小提琴图

案例16绘制类别图

案例17绘制瀑布图

案例18绘制等高线图

案例19绘制彩虹图

案例20绘制饼图

案例21绘制三维饼图

案例22绘制极坐标图

案例23绘制风羽图

案例24绘制热力图

案例25绘制时钟图

案例26绘制动态点轨迹

案例27绘制风速风向图

第2章数据拟合

案例28编写程序拟合数据

案例29利用鼠标右键对曲线进行拟合

案例30函数模板录入拟合初始参数

案例31在拟合命令中使用函数模板

案例32批量拟合

案例33自动获取拟合值

案例34多峰拟合

案例35给拟合函数传递固定值参数

案例36多函数拟合

案例37对拟合参数进行限制

案例38对复数数据进行拟合

案例39将拟合信息写入记事本

案例40拟合费米能级

案例41ARPES数据拟合色散关系

案例42对包含卷积效应的数据进行拟合

第3章数据分析处理

案例43对wave的基本操作

案例44获取wave的坐标信息

案例45对二维wave按照行或者列归一化

案例46按行或者列获取二维谱所有曲线

案例47将二维wave沿行或者列方向积分

案例48根据公式函数模板创建曲线或者Image

案例49对曲线进行对称相加

案例50获取Cursor状态

案例51获取高斯函数或者洛伦兹函数的半高宽

案例52将日期字符串转换为Date数据

案例53数值积分

案例54求解线性方程组

案例55对轮廓图插值获取二维网格图

案例56获取常见物理常数

案例57ARPES数据处理中的坐标变换

案例58ARPES数据获取费米面

案例59获取ARPES谱在动量空间的路径

案例60计算STM图谱孤岛面积

案例61计算平均风向

案例62STM谱傅里叶变换

案例63T检验

案例64卡尔曼滤波器

第4章程序设计

案例65获取控件的值

案例66设置文本框控件的数值

案例67获取控件的字符串信息

案例68设置控件的字符串信息

案例69获取显示在当前窗口的曲线的引用

案例70获取显示在当前窗口的Image的引用

案例71按照给定类型获取显示在Graph上的wave引用

案例72获取Graph上显示的wave的维数

案例73从Graph上清除所有的一维wave

案例74从Graph中清除所有的二维wave

案例75从ListBox中获取wave引用

案例76从Table中获取wave的引用

案例77获取ListBox控件SelWave引用

案例78获取wave的名字和所处文件夹

案例79获取显示在当前窗口Image的名字和数据文件夹

案例80获取所有的数据文件夹

案例81设置滑动条范围为wave的坐标范围

案例82Tab控件切换

案例83检查并显示一个程序窗口

案例84单选按钮互斥选择

案例85把文件中所有内容读到字符串

案例86从格式化文本文件中读取数据

案例87加载扩展名为pxt的实验数据文件

案例88加载Tiff格式图片

案例89将Excel数据读入二维wave

案例90输出CSV格式数据

案例91保存数据为pxt格式文件

案例92获取程序文件存放的路径

案例93自动更新所有的窗口生成脚本

案例94创建格式窗口

案例95在指定窗口旁边创建一个固定大小的窗口

案例96创建程序运行进度条窗口

案例97获取指定窗口的名字

案例98自动填充表格

案例99带有汉字的字符串处理

案例100获取计算机的物理地址

附录AIgor程序设计概述

A.1程序窗口

A.2程序代码构成

A.3程序类型

附录B基本语法

B.1表达式和命名规则

B.2变量和常量

B.3Structures

B.4流程控制语句

B.5函数

B.6程序子类型

B.7参数传递

B.8默认参数

B.9注释和代码风格

B.10include指令

B.11函数引用

B.12访问全局对象

B.13wave引用

B.14$运算符

B.15execute命令

B.16自动创建变量

作者简介

编辑推荐

配套资源

    本书配套提供源代码,下载地址为清华大学出版社网站本书页面。本书涉及的主题

? Igor Pro数据可视化程序设计

? Igor Pro数据拟合程序设计

? Igor Pro数据分析处理程序设计

? Igor Pro通用程序设计

? Igor Pro常用函数和命令应用

? Igor Pro程序设计技巧

作者寄语

贾小文  物理学博士,长期从事Igor Pro实验数据处理的研究和程序设计工作。多年来,利用Igor Pro编写了大量的实验数据处理程序,具有丰富的实践经验和娴熟的程序设计能力。编写的角分辨光电子能谱实验数据处理程序被多个实验室、单位采用。热爱编程及数据分析技术,熟练掌握C++、C#等程序设计语言,曾独立开发大学生基础实验在线考试系统、RTKGPS自动驾驶考试系统。

电子资料

www.luweidong.cn

下一个