輕易將數字矩陣在MATLAB與MS Word之間轉換格式
─ 給工程學生的提升工作效率秘笈
在我讀碩士和博士研究學位時,其中一項麻煩的工作就是將為用數值分析軟件 MATLAB 編寫的公式和計算結果重寫到報告和論文上。當時,我是使用 Microsoft Word 作為主要的文字處理軟件,在 Microsoft 方程式編輯器內手動輸入數字不單浪費時間,並且容易產生人為錯誤,尤其是數字矩陣。因此,我開發了一組程式碼來在 MATLAB 和微軟方程式格式之間轉換矩陣數據。你可以到我的 GitHub 儲存庫下載 MATLAB 程式碼,有關用法則如下描述。
從 MATLAB 轉換至 Microsoft 方程式
文件 mat2mseq.m
包含將 MATLAB 中的矩陣數據轉換為純文本格式的微軟方程式的程式碼。該函數有兩個參數:
二維數字矩陣
數字的字符格式 (請參見 sprintf)
範例:
martixA = \[1 0 0; 0 1 0; 0 0 1];
s = mat2mseq(martixA, '%g');
⇒ s =
■(1&0&0@0&1&0@0&0&1)
將輸出的字串複製到 Microsoft Word、OneNote 或 PowerPoint 中的方程式物件,就會在方程式編輯器中獲得 。
從 Microsoft 方程式轉換至MATLAB
文件 mseq2mat.m
包含將 Microsoft 方程式格式的數字矩陣轉換為 MATLAB 數值的程式碼。該函數需要以下參數:
- 微軟方程式中的矩陣 (純文本格式)
例如,當你從MS Word複製 到剪貼簿並貼上到 MATLAB。該矩陣將以微軟方程式的純文本格式於 MATLAB 的命令行中顯示,如 ■(1&0&0@0&1&0@0&0&1)
。通過使用函數分析字串即將其轉換為資料數值,如下例所示:
A = mseq2mat('■(1&0&0@0&1&0@0&0&1)')
⇒ A =
[ 1 0 0 ;
0 1 0 ;
0 0 1 ]
供開發使用文件
若要開發你的 MATH 轉換器,你可以參考網上文檔 UTN #28: Nearly Plain-Text Encoding of Mathematics 以查閱 Microsoft 如何使用 Unicode 在數學表達的編碼上。如果想學習更多在 Microsoft 方程式編輯器的快速插入數學符號的代碼,推薦你閱讀這份密西根理工大學的筆記 (PDF)。
你知道什麼出色的工具可以幫助編寫學術文章嗎?你有問題或建議嗎?
請在下面的評論中分享讓我們知道吧!
你可能也會想知道: