• Latex 超长矩阵如何处理显示问题


    问题

    矩阵内容太多,不能完全显示。下面是我的处理方法。

    双栏论文中矩阵跨栏显示

    使用 \begin{figure*}给公式包起来,跨双栏

    \begin{figure*}[t]
      \begin{equation}
          T_{PRY} =\left[
          % \setlength\arraycolsep{2.5pt}
          \begin{array}{cccc}
          A      & B       & C      & D      \\
      
          E      & F      & G      & H      \\
      
          I      & J      & K      & L      \\
      
          0     & 0       & 0     & 1
          \end{array}
          \right].
          \label{Eq::aa}
      \end{equation}
    \end{figure*}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    调整间隙宽度

    上面一段代码中已经注释掉了。使用 \setlength\arraycolsep{2.5pt},设置数值进行调整

    调整字号

    \small, \footnotesize, \tiny

    变量替换

    把 局部太长的分量 用一个变量替换,然后在正文中指明变量具体公式。

    换行

    单一行公式,使用 align, multline, split 等宏,配合 换行符“\” 自行给公式断行。

    参考Equations alignment using amsmath Package

    矩阵旋转 或者 页面旋转

    矩阵旋转单独一页

    旋转页面

    使用 \begin{landscape}旋转页面,参考latex 表格 图片超宽,旋转放置方法

    矩阵换行

    不需要编号

    参考Split a huge matrix across lines to fit on page

    \documentclass{article}
    
    \usepackage{mathtools,trimclip,lipsum}
    \setcounter{MaxMatrixCols}{20}
    \newcommand{\hugematrix}{$\left[\begin{smallmatrix*}[r]
    -0.0629& 0.0629& -0.1819&  0.1819&       0&       0&       0&       0&       0&  0.0652&  0.0185&  0.0034&  0.0019& -0.0019& -0.0034\\
    0.0107& 0.0107& -0.0676& -0.0676& -0.1455& -0.1455& -0.1494& -0.1494& -1.2860&       0&       0&  0.0013&  0.0035&  0.0035&  0.0013\\
    -0.0142& 0.0142& -0.0128&  0.0128&       0&       0&       0&       0&       0& -0.1272& -0.0929&  0.0195&  0.0111& -0.0111& -0.0195\\         
    0&      0&       0&       0&       0&       0&       0&       0& -0.3122&       0&       0&  0.1999&  0.1999&  0.1999&  0.1999\\
    0&      0& -0.0098& -0.0098& -0.0071& -0.0071& -0.0074& -0.0074& -0.0676&       0&       0& -0.0004& -0.0004& -0.0004& -0.0004\\     
    0&      0&       0&       0&       0&       0&       0&       0&       0&  0.0078&  0.0066&  0.0001&  0.0001& -0.0001& -0.0001\\
    0&      0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0\\
    0&      0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0\\
    0&      0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0\\
    0&      0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0&       0
    \end{smallmatrix*}\right]$}
    
    \begin{document}
    
    \lipsum[1] 			% 生成随机文案
    \begin{multline*}
    B_u  = \clipbox*{0pt {-1.1\depth} {.53\width} {1.1\height}}{\hugematrix}\\ 
    \clipbox*{{.53\width} {-1.1\depth} {\width} {1.1\height}}{\hugematrix}
    \end{multline*}
    
    \lipsum[2]
    \end{document}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    编号

    参考 Equation number at the right of first line with multline

    结合上一节方法,做如下修改

    \begin{equation}
    \begin{multlined}[t]%
    	包裹上一小节的公式
    \end{multlined}%
    \end{equation}%
    
    • 1
    • 2
    • 3
    • 4
    • 5

    注意此处使用的是 \begin{multlined}上一小结使用的是 \begin{multline*}。其中可能有 package 区别。注意报错信息中是不是缺少 package。具体区别不想继续整了。

    最后我的代码。其中 hugematrix参考上一节设定。

    \begin{equation}%
        \begin{multlined}[b]%
            ^0_tT  = \scalebox{.8}{\clipbox*{0pt {-1.1\depth} {.6\width} {1.1\height}}{\hugematrix}}\\ 
            \scalebox{.8}{\clipbox*{{.6\width} {-1.1\depth} {\width} {1.1\height}}{\hugematrix}}
        \end{multlined}%
    \end{equation}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    where and are the x and y coordinates of the lower left corner of the box you want to keep from and and are the upper right coordinates. You can use \height, \width and \depth (or multiples of those) to reference the height (above the baseline), depth (below baseline) and width of the content. To avoid clipping a small portion of the edge, you need slightly more than \height and \depth.

    \clipbox*{{} {} {} {}}{}
    
    • 1

    通过调整上面四个参数调整缩进,主要是第一个和第三个调整横向断开位置。

  • 相关阅读:
    Java并发编程—CompletableFuture的介绍和使用
    力扣刷题学习SQL篇——1-5 修改(变更性别——使用判断if/case when)
    六年 Java 老鸟,写给 1-3 年程序员的几点建议,满满硬货指导
    Redis数据类型之string
    【云原生 | 60】Docker中通过docker-compose部署kafka集群
    numpy.unique
    关于遥感像元反射率的思考
    day27--AJAX(bootstrap之modal,toast;接口文档的一些用法;AJAX原理)
    看了我的MyBatis-Plus用法,同事也开始悄悄模仿了.
    【射击game】
  • 原文地址:https://blog.csdn.net/jh1513/article/details/136637226