【IDL】IDL 8.4 新特性介绍
发表于 2014-10-21
-
数据读取
-
图形可视化
-
数据分析
-
数据类型
-
语言更新
1. 数据读取
-
HDF5 函数库
-
视频读取增强
-
支持输出Geospatial PDF
2. 图形可视化
-
新增获取代码方法
IDL> p = PLOT(/TEST, THICK=3, COLOR='red', LAYOUT=[2,1,1])
IDL> b = BARPLOT(/TEST, FILL_COLOR='green', LAYOUT=[2,1,2], /CURRENT)
IDL> p.generateCode, 'D:\temp\mycode.pro', /savedata
-
IDLgrAxis 增强
-
ERRORPLOT 新增两个属性
-
可视化窗口工具条
-
图形输出更加平滑
3. 数据分析
-
新增 ALOG2 函数
-
FFT_POWERSPECTRUM 函数
-
GAUSSINT 函数增强
4. 数据类型
-
Big Integers
IDL> b = BigInteger(2)^1279
IDL> help, b
B BIGINTEGER = 1.0407932194664400...x10^385
-
Booleans
IDL> a = [0.0, 1.0, 0.0, 3.0]
IDL> b = BOOLEAN(a)
IDL> print, b
0 1 0 1
IDL> print, json_serialize(b)
[false,true,false,true]
- Attributes
IDL> s = findgen(3,4)
IDL> s.DIM
3 4
IDL> s.NDIM
2
IDL> s.LENGTH
12
IDL> s.TYPENAME
FLOAT
-
静态方法(Static Method)
IDL> arr = [1.0:5]
IDL> arr
1.0000000 2.0000000 3.0000000 4.0000000 5.0000000
IDL> arr.Ceil()
1 2 3 4 5
IDL> arr.Max()
5.0000000
IDL> arr.Mean()
3.0000000
IDL> arr.Product()
120.00000000000000
5. 语言更新
-
文件夹监视系统
这样用户就可以编写一个批处理,使用 FOLDERWATCH 监视一个指定文件夹,当文件夹内发生预想的变化时(如新增文件、文件修改或删除等),继续执行下面的处理。
-
函数程序设计(Functional Programming)
IDL> ;求var的平方根
IDL> var = [0:4]
IDL> PRINT, var.Map(LAMBDA(n: sqrt(n)))
0.000000 1.00000 1.41421 1.73205 2.00000
IDL> ;利用Filter函数求得区间内的素数
IDL> var = [2:50]
IDL> lam = LAMBDA(n:n le 3 || MIN(n mod [2:FIX(SQRT(n))]))
IDL> newvar = var.Filter(lam)
IDL> PRINT, newvar
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47
-
代码覆盖范围
-
TIMER 类改进
-
ARRAY_EQUAL 函数改进
-
新增 NOSAVE编译选项
-
HASH、ORDEREDHASH、JSON_PARSE 新增 FOLD_CASE 关键字。
-
IDL_Container 类新增存储指针功能。
-
LIST 数据类型更新
-
图形支持Unicode字符,最多8个十六进制数字。
-
ISA 函数新增COMPLEX、FLOAT、INTEGER、STRING关键字。
-
JSON_SERIALIZE 功能改进
-
库更新
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界