如何在Overleaf的LaTeX中进一步缩小矩阵尺寸?
解决大型矩阵超出页面宽度的几种方法
针对你用\footnotesize后矩阵仍超宽的问题,给你几个实用的调整方案:
1. 进一步缩小字体+减小矩阵列间距
直接用更小字号(比如\scriptsize),同时压缩矩阵列之间的默认间距,这是最直接的适配办法:
\begin{equation} \scriptsize \setlength{\arraycolsep}{2pt} % 把默认列间距从5pt左右缩小到2pt \begin{bmatrix} 1.6 & -0.16 & 0 & -0.64 & 0 & 0 & 0 & 0 & 0\\ -0.16 & 1.6 & -0.16 & 0 & -0.64 & 0 & 0 & 0 & 0\\ 0 & -0.16 & 1.6 & 0 & 0 & -0.64 & 0 & 0 & 0\\ -0.64 & 0 & 0 & 1.6 & -0.16 & 0 & -0.64 & 0 & 0\\ 0 & -0.64 & 0 & -0.16 & 1.6 & -0.16 & 0 & -0.64 & 0\\ 0 & 0 & -0.64 & 0 & -0.16 & 1.6 & -0.16 & 0 & -0.64\\ 0 & 0 & 0 & -0.64 & 0 & 0 & 1.6 & -0.16 & 0\\ 0 & 0 & 0 & 0 & -0.64 & 0 & -0.16 & 1.6 & -0.16\\ 0 & 0 & 0 & 0 & 0 & -0.64 & 0 & -0.16 & 1.6\\ \end{bmatrix} \\ \begin{bmatrix} u_{1, 1}\\ u_{2, 1}\\ u_{3, 1}\\ u_{1, 2}\\ u_{2, 2}\\ u_{3, 2}\\ u_{1, 3}\\ u_{2, 3}\\ u_{3, 3}\\ \end{bmatrix} = \begin{bmatrix} f_{1, 1}\\ f_{2, 1}\\ f_{3, 1}\\ f_{1, 2}\\ f_{2, 2}\\ f_{3, 2}\\ f_{1, 3}\\ f_{2, 3}\\ f_{3, 3}\\ \end{bmatrix} \end{equation}
注:把0.32+1.28直接计算为1.6,能大幅缩短每行字符长度,同时不影响可读性
2. 用分块矩阵简化结构
你的矩阵是规则的分块对角结构,用分块展示既省空间又更清晰,需要先导入blkarray包:
\usepackage{blkarray}
然后修改矩阵部分:
\begin{equation} \footnotesize \begin{blockarray}{ccc} \begin{block}{[ccc]} 1.6 & -0.16 & 0 \\ -0.16 & 1.6 & -0.16 \\ 0 & -0.16 & 1.6 \\ \end{block} & \begin{block}{[ccc]} -0.64 & 0 & 0 \\ 0 & -0.64 & 0 \\ 0 & 0 & -0.64 \\ \end{block} & \begin{block}{[ccc]} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \\ \end{block} \\ \begin{block}{[ccc]} -0.64 & 0 & 0 \\ 0 & -0.64 & 0 \\ 0 & 0 & -0.64 \\ \end{block} & \begin{block}{[ccc]} 1.6 & -0.16 & 0 \\ -0.16 & 1.6 & -0.16 \\ 0 & -0.16 & 1.6 \\ \end{block} & \begin{block}{[ccc]} -0.64 & 0 & 0 \\ 0 & -0.64 & 0 \\ 0 & 0 & -0.64 \\ \end{block} \\ \begin{block}{[ccc]} 0 & 0 & 0 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \\ \end{block} & \begin{block}{[ccc]} -0.64 & 0 & 0 \\ 0 & -0.64 & 0 \\ 0 & 0 & -0.64 \\ \end{block} & \begin{block}{[ccc]} 1.6 & -0.16 & 0 \\ -0.16 & 1.6 & -0.16 \\ 0 & -0.16 & 1.6 \\ \end{block} \\ \end{blockarray} \\ \begin{bmatrix} u_{1, 1}\\ u_{2, 1}\\ u_{3, 1}\\ u_{1, 2}\\ u_{2, 2}\\ u_{3, 2}\\ u_{1, 3}\\ u_{2, 3}\\ u_{3, 3}\\ \end{bmatrix} = \begin{bmatrix} f_{1, 1}\\ f_{2, 1}\\ f_{3, 1}\\ f_{1, 2}\\ f_{2, 2}\\ f_{3, 2}\\ f_{1, 3}\\ f_{2, 3}\\ f_{3, 3}\\ \end{bmatrix} \end{equation}
3. 调整页面边距
如果不想缩小字体,可以修改geometry的参数,扩大页面可用宽度:
\usepackage[a4paper, left=1in, right=1in, top=1in, bottom=1in]{geometry}
原来的total={6in,8in}限制了宽度,直接设置边距能给矩阵留出更多横向空间
完整修改示例代码
这里用第一种方法的完整代码,兼顾可读性和页面适配:
\documentclass{article} \usepackage[utf8]{inputenc} \usepackage{multicol} \usepackage{amsmath} \usepackage[a4paper, total={6in, 8in}]{geometry} \title{example stackoverflow} \author{cristian cotovanu} \date{November 2022} \begin{document} \maketitle \section{Introduction} \subsubsection*{3)} $\frac{1}{h_x^2} = 0.16$, $\frac{2}{h_x^2} = 0.32$, $\frac{1}{h_y^2} = 0.64$, $\frac{2}{h_y^2} = 1.28$. These values will be substitute in the matrix for more clarity. \begin{equation} \scriptsize \setlength{\arraycolsep}{2pt} \begin{bmatrix} 1.6 & -0.16 & 0 & -0.64 & 0 & 0 & 0 & 0 & 0\\ -0.16 & 1.6 & -0.16 & 0 & -0.64 & 0 & 0 & 0 & 0\\ 0 & -0.16 & 1.6 & 0 & 0 & -0.64 & 0 & 0 & 0\\ -0.64 & 0 & 0 & 1.6 & -0.16 & 0 & -0.64 & 0 & 0\\ 0 & -0.64 & 0 & -0.16 & 1.6 & -0.16 & 0 & -0.64 & 0\\ 0 & 0 & -0.64 & 0 & -0.16 & 1.6 & -0.16 & 0 & -0.64\\ 0 & 0 & 0 & -0.64 & 0 & 0 & 1.6 & -0.16 & 0\\ 0 & 0 & 0 & 0 & -0.64 & 0 & -0.16 & 1.6 & -0.16\\ 0 & 0 & 0 & 0 & 0 & -0.64 & 0 & -0.16 & 1.6\\ \end{bmatrix} \\ \begin{bmatrix} u_{1, 1}\\ u_{2, 1}\\ u_{3, 1}\\ u_{1, 2}\\ u_{2, 2}\\ u_{3, 2}\\ u_{1, 3}\\ u_{2, 3}\\ u_{3, 3}\\ \end{bmatrix} = \begin{bmatrix} f_{1, 1}\\ f_{2, 1}\\ f_{3, 1}\\ f_{1, 2}\\ f_{2, 2}\\ f_{3, 2}\\ f_{1, 3}\\ f_{2, 3}\\ f_{3, 3}\\ \end{bmatrix} \end{equation} \end{document}
内容的提问来源于stack exchange,提问作者user12581768
相关产品推荐
相关产品推荐

