In mathematics, matrices are used to represent linear transformations — such as rotations, translations, and scaling — and systems of linear equations. They are represented as arrays of numbers and are used to perform operations such as matrix multiplication and matrix inversion.
In this article, we will learn how to typeset matrices — the right way — using the matrix
environment provided by the amsmath
package. Our goal is to create matrices that are clear, concise, and easy to read.
How to typeset matrix in LaTeX
We can create a beautiful matrix in LaTeX with the help of the matrix
environment provided by the amsmath
package. This matrix
environment provides us with a wide range of formatting options, including the ability to specify the alignment and spacing of the matrix elements.
To use the amsmath
package in your environment, you can include the following in the preamble of your LaTeX document:
\usepackage{amsmath}
To use the matrix
environment, we enclose the matrix definition within a \begin{matrix}
and \end{matrix}
block. Here’s an example:
\begin{equation*}
A_{m,n} =
\begin{matrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{matrix}
\end{equation*}
This will produce a matrix with three rows and three columns, as shown below:
![[The Correct Way!] How to Typeset Matrix in Latex 1 Plain Matrix in LaTeX](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-plain.jpg.webp)
Matrix with parenthesis delimiter
If you want to enclose your matrix with a parenthesis, you can change \begin{matrix}
and \end{matrix}
in Lines 3 and 8 with \begin{pmatrix}
and \end{pmatrix}
respectively.
\begin{pmatrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{pmatrix}
The above code will render the following:
![[The Correct Way!] How to Typeset Matrix in Latex 2 Matrix in LaTex with Parenthesis](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-parenthesis.jpg.webp)
Matrix with square brackets delimiter
The \begin{bmatrix}
command creates a matrix with square brackets or boundaries.
\begin{bmatrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{bmatrix}
The above code will render the following:
![[The Correct Way!] How to Typeset Matrix in Latex 3 matrix latex square brackets](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-square-brackets.jpg.webp)
Matrix with curly brackets delimiter
The \begin{Bmatrix}
command creates a matrix with square brackets boundaries.
\begin{Bmatrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{Bmatrix}
The above code will render a matrix with a curly brackets delimiter.
![[The Correct Way!] How to Typeset Matrix in Latex 4 matrix latex curly brackets](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-curly-brackets.jpg.webp)
Matrix with a pipe delimiter
The \begin{vmatrix}
command creates a matrix with a pipe delimiter.
\begin{vmatrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{vmatrix}
The above code will render a matrix with a pipe delimiter.
![[The Correct Way!] How to Typeset Matrix in Latex 5 matrix latex pipe delimiter](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-pipe-delimiter.jpg.webp)
Matrix with a double-pipe delimiter
The \begin{Vmatrix}
command creates a matrix with a double pipe delimiter.
\begin{Vmatrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{Vmatrix}
The above code will render the following:
![[The Correct Way!] How to Typeset Matrix in Latex 6 matrix latex pipe double delimiter](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-pipe-double-delimiter.jpg.webp)
Custom delimiter
If you need to create matrices with different delimiters, you can add them manually to a plain matrix
. For example:
\begin{equation*}
A_{m,n} =
\left\lceil
\begin{matrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{matrix}
\right\rceil
\end{equation*}
The above code will render the following:
![[The Correct Way!] How to Typeset Matrix in Latex 7 matrix latex custom delimiter2](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-custom-delimiter2.jpg.webp)
\begin{equation*}
A_{m,n} =
\left\langle
\begin{matrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{matrix}
\right\rvert
\end{equation*}
The above code will render the following:
![[The Correct Way!] How to Typeset Matrix in Latex 8 matrix latex custom delimiter1](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-custom-delimiter1-.jpg.webp)
\begin{equation*}
A_{m,n} =
\left\langle
\begin{matrix}
a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m,1} & a_{m,2} & \cdots & a_{m,n}
\end{matrix}
\right\rangle
\end{equation*}
The above code will render the following:
![[The Correct Way!] How to Typeset Matrix in Latex 9 matrix latex custom delimiter3](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-custom-delimiter3.jpg.webp)
Inline matrices in LaTex
When typesetting inline math, the usual matrix
environments above may look too big. It may be better to use smallmatrix
in such situations, although you will need to provide your own delimiters.
\noindent Let $A=$
$\begin{pmatrix}
a & b\\
c & d
\end{pmatrix}$ be a matrix. With the small version $A=$
$\big(\begin{smallmatrix}
a & b\\
c & d
\end{smallmatrix}\big)$.
The above code will render the following:
![[The Correct Way!] How to Typeset Matrix in Latex 10 inline matrix](https://testpinoy.com/wp-content/uploads/2023/01/inline-matrix-latex.jpg.webp)
Using the `array` environment to typeset matrix in LaTeX
The array
environment in LaTeX is a versatile tool for creating matrices and tables. It offers more flexibility and control over the formatting of the matrix. It provides column alignment (left, center, or right) and optional vertical lines separating the columns.
To use the array
environment, you need to specify the number of columns and the alignment of the columns using the following syntax:
\begin{array}{col₁col₂…colₙ}
item₁₁ & item₁₂ … & item₁ₙ \\
item₂₁ & item₂₂ … & item₂ₙ \\
⋮
itemₘ₁ & itemₘ₂ … & itemₘₙ
\end{array}
To write an m×n matrix in LaTeX using the array
environment, we need to specify the number of columns in the \begin{array}{}
command. That’s in Line 1 of the code above. Here’s an example:
\[
A_{m\times n} =
\left[ {\begin{array}{cccc}
a_{11} & a_{12} & \cdots & a_{1n}\\
a_{21} & a_{22} & \cdots & a_{2n}\\
\vdots & \vdots & \ddots & \vdots\\
a_{m1} & a_{m2} & \cdots & a_{mn}\\
\end{array} } \right]
\]
The above code should give you the following:
![[The Correct Way!] How to Typeset Matrix in Latex 3 matrix latex square brackets](https://testpinoy.com/wp-content/uploads/2023/01/matrix-latex-square-brackets.jpg.webp)
Summary
In this article, we have covered the basics of typesetting matrices in LaTeX using the matrix
environment provided by the amsmath
package. We showed how to use the pmatrix
, bmatrix
, vmatrix
, and Vmatrix
environments to create matrices with different types of delimiters.
We hope that this guide has been helpful and that you now feel more confident in your ability to create professional-quality matrices in LaTeX. Remember to refer back to this guide as you work on your own matrices, and don’t hesitate to experiment with different formatting options to see what works best for you.
As you continue to work with LaTeX, you will find that there are many other powerful tools and features available for typesetting math and scientific documents. We encourage you to explore these resources and to continue learning and growing as a LaTeX user. Good luck and happy typesetting!