如何在快速在word文档中输入多个矩阵
如何在快速在word文档中输入多个矩阵
放在文前:假如需要我们快速输入下面这些公式、矩阵数据到word文档中,大家有什么办法呢?一个一个输入手动进去?这个办法不是不可以,但是有点低效。使用图像识别软件,直接生成mathtype的代码格式?那如果没有现成的公式可以识别又该怎么办呢?请大家接着往下看,笔者为你慢慢道来。
不知道大家有没有这么一种令人痛彻心扉的感受:手头上有一个报告急着要交,但是报告中含有大量的矩阵数据。如果一个一个手动输入进去,相信大家再做的时候想死的心都有。那么有没有一种办法可以快速在word中输入多个矩阵数据呢?
上述数据是笔者在编写有限元代码过程中生成的数据,编程语言为MATLAB。数据很容易获取,但是将数据转换为mathtpye的格式,还是要费点功夫。笔者曾经学过latex,发现latex代码可以转换为mathtype的代码格式。latex的矩阵代码如下:
\begin{bmatrix} 1 & 2 & 3\\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{bmatrix} |
那么,接下来要做的事情就简单了,我们仅需要将数据写出来,数据分隔符设置为“&”,再加上头尾的标识符、换行符就可以了。
MATLAB的输入写出可以用下列语句:
dlmwrite(filename,data,'delimiter','&','precision',4)
其中,filename为文件名及其所在地址,仅填写文件名会保存在工作目录,如:’C:\user\filename.txt’;data为保存的数据;4为保存数据的位数,精度高可以将该数字增大。保存的数据为科学计数法。保存的数据如下图:
接下来,就需要将文件中的数据转换为latex代码,可以采用python语言实现,该部分不详细展开叙述,默认大家都会哈,就是字符串处理,so easy!提醒:“e+0”,“e-0”等可以做个字符替换。
现在我们已经有了矩阵的latex代码,接下来就是“魔法”转换了!python有一个库可以将latex代码转换为mathtpye的代码,直接把生成的mathtype代码写入剪切板,复制进入word文档即可写入矩阵。如下图所示:
这个方法是不是很简单、便捷呢?反正笔者在编写有限元报告时每次都会用这个工具,非常好用。不过这个方法还是存在一些不足的,当生成比较大的矩阵时,mathtype代码复制进word时可能会报错。没记错的话,十阶矩阵复制是会出错,这个问题应该是word造成的。
欢迎大家扫码关注,比心❤