如何以快捷方式将Scilab控制台中的矩阵转换为latex?

如何以快捷方式将Scilab控制台中的矩阵转换为latex?,latex,scilab,Latex,Scilab,实际上,我在Scilab的控制台中有一个大矩阵。在latex的文本文件中键入此矩阵非常繁琐。我的目标是在文本文件中自动为这个矩阵编写latex代码。有人能帮我吗? [我在控制台中有这样的大矩阵A=[0.20.30.3;0.40.50.6;0.70.80.9]。行大约运行30次,列大约运行6次。你的问题缺少关于输入矩阵的信息:实数、复数、整数值?您希望输出如何:浮动、指数 由于您的问题相当简单且易于理解,因此以下是一个假设真实矩阵的答案: function display_as_pmatrix(A

实际上,我在Scilab的控制台中有一个大矩阵。在latex的文本文件中键入此矩阵非常繁琐。我的目标是在文本文件中自动为这个矩阵编写latex代码。有人能帮我吗?
[我在控制台中有这样的大矩阵A=[0.20.30.3;0.40.50.6;0.70.80.9]。行大约运行30次,列大约运行6次。你的问题缺少关于输入矩阵的信息:实数、复数、整数值?您希望输出如何:浮动、指数

由于您的问题相当简单且易于理解,因此以下是一个假设真实矩阵的答案:

function display_as_pmatrix(A,fmt)
  if ~exists('fmt') then // default format : 10-th wide exponential notation with 3 digit
    fmt='%10.3e'
  end
  // writing a latex pmatrix 
  // & between each term
  // \\ a the end of each row
  // except on the last row
  mprintf('\\begin{pmatrix}\n') // mprintf accept C-printf 
  for j=1:size(A,1)-1
    mprintf(fmt,A(j,1).')
    mprintf(' \& '+fmt,A(j,2:$).')
    mprintf('\\\\\n')
  end
  j=size(A,1)
  mprintf(fmt,A(j,1).')
  mprintf(' \& '+fmt,A(j,2:$).')
  mprintf('\n\\end{pmatrix}\n')
endfunction
这个函数是这样使用的

-->display_as_pmatrix(A,'%10.3e')
\begin{pmatrix}
 2.360e-01 &  8.837e-01 &  2.262e-02\\
 4.076e-01 &  2.393e-01 &  8.311e-01\\
 7.294e-01 &  9.087e-01 &  4.105e-01
\end{pmatrix}

-->display_as_pmatrix(A,'%5.2g')
\begin{pmatrix}
 0.24 &  0.88 & 0.23\\
 0.41 &  0.24 &  0.83\\
 0.73 &  0.91 &  0.41
\end{pmatrix}

您只需使用本机函数prettyprint:

结果有点混乱,但您可以在TeX文件中以最小版本复制和粘贴它。例如,我必须删除关键字pmatrix中的换行符:

输出:


如果矩阵的列数超过10列,则需要将\setcounter{maxmartrixcols}{ncols}添加到序言中,其中ncols大于列数。

问答网站也是如此,尤其是关于编程的网站。如果您的问题中没有任何代码,您就没有遵循。你至少应该给我看一眼。那我们会帮助你的。考虑到你的问题,我建议你看看强积金的功能。谢谢你的反馈。控制台中有这样的矩阵A=[1 2 3;4 5 6;7 8 9],非常感谢。这是非常有用的。我在控制台中有这样的矩阵A=[0.20.30.3;0.40.50.6;0.70.80.9]。这是示例,但实际上,我有一个大的真实matrixDear PTRK,你的答案非常有用,我得到了我的解决方案。它运行良好且完美
--> z = rand(4,4);
--> prettyprint(z)
 ans  =

 ${\begin{pmatrix}0.6733739&0.1899375&0.0403497&0.2514597\cr 0.6536 
 925&0.2583981&0.7400147&0.3843350\cr 0.1996896&0.0987874&0.6162660 
 &0.4396460\cr 0.6014125&0.0619903&0.6583583&0.6540737\cr \end{pmat 
 rix}}$  
\documentclass{standalone}
\usepackage{amsmath}
\begin{document}

 ${\begin{pmatrix}0.6733739&0.1899375&0.0403497&0.2514597\cr 0.6536 
 925&0.2583981&0.7400147&0.3843350\cr 0.1996896&0.0987874&0.6162660 
 &0.4396460\cr 0.6014125&0.0619903&0.6583583&0.6540737\cr \end{pmatrix}}$

\end{document}