Igor Pro 10 首次內建 Python 整合功能,讓使用者可以直接執行 Python 程式碼,並在 Igor 與 Python 之間交換資料。
使用者可以結合 Igor 在數值分析、資料視覺化及資料管理方面的功能,以及 Python 豐富的第三方程式庫,擴充資料處理與分析能力。
主要功能如下:
igorpro Python 模組: 提供 API,讓 Python 存取及操作 Igor 的資料,包括 Waves(波形資料)、Data Folders(資料夾)、變數及字串。
內建 Python 主控台(Python Console): 可直接執行 Python 程式碼,並提供語法上色及程式碼自動補全功能。
Python 指令: 可執行單一 Python 指令。
PythonFile 指令: 可從 Igor 啟動並執行完整的 Python 腳本。
以上兩項指令皆可將 NumPy 陣列等 Python 物件傳回 Igor,並轉換為 Igor 原生資料型別。
新增的 MMI XOP 採用廣受使用的 μManager 專案,可控制多種硬體設備,包括:科學相機、光源、快門、濾光輪、XY 平面及 Z 軸位移平台。
完成 MMI 設定後,只需約七個指令步驟,便能透過 Igor 控制 Micro-Manager,從相容相機擷取影像、將影像載入 Wave,並顯示影像。
MMC_LoadDevice "myDemoCam", "DemoCamera", "DCam"
MMC_InitializeDevice "myDemoCam"
MMC_SetCameraDevice "myDemoCam"
make/O myImageWave
MMI_BindImageWave myImageWave
MMC_SnapImage
NewImage myImageWave
此外,Micro-Manager 與 MMI 也支援影像串流(Image Streaming),可連續擷取及顯示影像,並可選擇使用 MMI_OpenH5file 將影像儲存為 HDF5 檔案。
程序視窗與程式編輯器改善
Igor Pro 10 改善了程式編寫效率,主要更新如下:
語法上色改善: 提升程式碼的辨識度。
程式碼自動補全改善: 輔助輸入程式碼。
快速跳轉至函數: 在呼叫自訂函數的程式碼中,按住 Ctrl 並點擊函數名稱,即可跳轉至該函數的定義位置。
更廣泛的多行續寫支援: 幾乎可以在任何適用位置使用反斜線 \ 作為續行符號,讓較長的運算式或函數宣告可以分行撰寫。
Function/S LineContinuationDemo(String prefix, \
String separator, \
String suffix)
String combined = prefix \
+ separator // a comment before line continuation \
+ suffix
return combined
End
程式碼摺疊(Code Folding): 可摺疊程式碼區塊或整個函數,讓大型程序更容易閱讀及維護。
改善錯誤處理機制,提升程式穩定性,尤其針對超出資料範圍、空白 Wave 及 NaN 資料。
新增對 hold-strings Waves 的支援。
支援 100% 與 200% 顯示縮放比例。
可直接在表格介面中使用複製及貼上快捷鍵。
Auto-locate 不再回傳寬度為零的峰值。
改善多項警示及錯誤訊息。
改善多邊形與貝茲曲線(Bezier curves)的編輯功能,包括更完善的限制條件、頂點吸附、情境式選單,以及操作提示。
在圖表中新增 ProgTop 與 UserTop 繪圖圖層,使繪圖物件可以顯示在註解上方。
頁面版面配置(Page Layout)改善
內建頁面邊界參考線: 新增 ML、MT、MR、MB,分別代表左、上、右、下邊界,可協助將物件對齊至頁面的可列印區域。參考線會依照「Page Size」對話框設定的頁面邊界調整。
顯示參考線位置: 拖曳參考線時,視窗底部的狀態資訊會顯示其位置,並以可列印頁面寬度或高度的比例表示。
精確定位參考線: 拖曳時按住 Shift,可將參考線位置限制在可列印頁面寬度或高度的特定有理數比例位置。
縮放版面: 按住 Ctrl 並滾動滑鼠滾輪,可調整版面顯示倍率。
加速移動物件: 按住 Shift 並使用方向鍵移動版面物件,移動速度會提高十倍。
控制面板中的控制項現在可以錨定至參考線(Guides),讓面板在調整視窗大小時,仍能維持預期的相對位置。
這項功能不需要額外撰寫 Igor 程式碼,即可改善控制面板的縮放適應性。其參考線機制與先前僅適用於子視窗(Subwindows)的機制相同。
例如,可以設定清單方塊的右緣始終位於面板中央、底緣與面板底部保持固定距離;右側控制項維持在距離視窗右緣四分之一面板寬度的位置,而標題則始終保持置中。
當作業系統語言設定為日文時,Igor 的使用者介面會自動切換為日文。使用者也可以在「Miscellaneous Settings」對話框中自行變更此設定。此外,不再需要另外購買日文版 Igor 授權。不過,大部分說明文件仍以英文提供。
Interp4D
Interp4DPath
MMC_* and MMI_* (82 operations added by the MMI64.xop)
Python
PythonEnv
PythonFile
Say
graphemeLength
MMC_* and MMI_* MMI64.xop 新增 47 個函數
stringIsNull
UTF8CharLength
subtractMin()
indexMatch()
removeCol()
removeCols()
scaleLayers()
scaleChunks()
subtractRows()
subtractCols()
quatFromSpherical()
quatInverse()
median()
zapZeros()
replaceInfs()
enoise()
setType()
rowDiff()
binMean()
binVar()
imit()
not()
加快編譯速度: 改善 Igor 編譯器,縮短使用者自訂程序的編譯時間。
改善檔案與路徑操作效能: 提升 NewPath 及 IndexedFile 操作指令的執行效率,尤其是與說明文件 IndexedDir 主題中 PrintFoldersAndFiles 範例函數類似的程式。
提升多執行緒處理能力: 在 Windows 11 上,MultiThread 與 ThreadGroupCreate 現在可以使用硬體支援的全部邏輯處理器,不再限制最多 100 個。受作業系統限制,Windows 10 最多只能使用 64 個邏輯處理器。
圖形創作—— Igor Pro 是一個出版品質的科學和工程圖形程式,能夠建立視覺上令人驚嘆的 3D 圖形以及 2D 圖形。
資料訪問——科學家和工程師會遇到許多資料格式。Igor Pro 提供各種匯入、保存和匯出功能,幾乎可以滿足任何要求。
資料保存——與電子表格程序不同,Igor Pro 的資料物件不會使您的螢幕混亂。將資料有效地組織到層次結構中,就像將檔案組織在硬碟中的檔案夾層次結構中一樣!
數據處理和數學—— Igor Pro 提供了廣泛的數學和資料處理程式庫,而 Igor 的面向數組的算法使複雜的操作變得非常簡單。
圖像處理—— Igor Pro 包含了一整套用於科學圖像分析應用的操作和功能。
數據分析—— Igor Pro 提供許多分析功能,包括曲線擬合、峰值分析、訊號處理和統計。
功能分析—— Igor 包括幾個對函數而不是離散數據點的操作,包括:函數繪圖、微分方程、函數的數值積分、根查找和優化。
Igor Pro 包含一個功能強大且功能齊全的結構化編程語言,可用於數據匯入、檔案 I/O、分析、數據採集、繪圖、列印以及您能想到的任何事情的自動化。
Igor 的功能齊全的符號調試器為您提供了一個強大的工具,通過觀察它一次執行一個步驟來使您的代碼正常工作。您可以在規則圖中將多維波作為圖像和一維波進行查看。您還可以查看表格中的波形和就地編輯的值。
以 EPS 和 PDF 格式生成的導出高分辨率,期刊品質的科學圖表。
非常快速地處理大型資料集。
包括廣泛的科學和工程分析和模擬功能。
包括內置編程環境,可以輕鬆實現應用程式的自動化和擴展內部工具。
可通過內置編程環境完全編程,並可通過 C 語言編寫的外部代碼(XOP)進行擴展。
Igor Pro 特別支援時間序列或其他均勻間隔的數據。
包括用於圖像過濾、操作和繪圖和大量圖像處理工具。
在 Macintosh 和 Windows 計算機上運行,Igor Pro 8 數據文件是跨平台兼容的。
以多種格式匯入數據,並可從硬體設備獲取數據。
使用 unicode 支援外語和數學符號。
使用者對使用者的支援和協作論壇。
響應迅速,受到用戶支持的技術支援。
包括 Igor 濾波器涉及實驗室,用於 FIR 和 IIR 數字濾波器的交互設計。