LaTeXを初心者なりに学んでみた話

人間不思議なもので、4月になると何か新しいものをやりたくなるものですね。私もなんとなく$\LaTeX$を学習したくなったので、初心者なりに$\LaTeX$を学んだ話を書こうと思います。
### 今回使用した環境
Windows11
### 環境構築
$\LaTeX$を使うためには、$\TeX$のディストリービューションをどれか一つ選んで、インストールしなければならないらしいです。今回は、TeX Liveをインストールします。

https://www.tug.org/texlive/acquire-netinstall.html

上記のサイトの install-tl-windows.exeをクリックしてインストールします。設定はそのままでインストールして問題なさそうでした。
詳細については、以下の$\TeX$ Wikiのサイトをご覧ください。

https://texwiki.texjp.org/?TeX%20Live%2FWindows

### Visual Studio Codeでの設定
今回、$\LaTeX$のエディターにはVisual Studio Codeを使用します。
インストールがまだの方は、以下のサイトからインストールしてください。

https://code.visualstudio.com/

$\LaTeX$という拡張機能をインストールします。
![LaTeX.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/cce7284d-47d6-2df1-f5ca-7b08722e25cd.png)

### .texファイルのコンパイル
LaTeXは、.texファイルに書き込みます。完成したら、コンパイルをしてPDFファイルにします。.texから.pdfになるまでに2回コンパイルします。流れは、以下の通りです。
.tex → .dvi → .pdf
以下、コンパイルの際に使用するコマンドです。
```batch
rem 以下のコマンドで、.texから.dviにします。
uplatex sample.tex
rem 以下のコマンドで、.dviから.pdfにします。
dvipdfmx sample.dvi
```
### LaTeXの初めの一歩

https://www.cosmo.sci.hokudai.ac.jp/~matryo/rigaku/TeX_cs.pdf

友人に教えてもらった$\LaTeX$のチートシートです。大抵のことは、これで解決します。
以下に、基本的なひな形だけ示しておこうと思います。
```LaTeX
\documentclass[dvipdfmx,uplatex]{jsarticle}
\title{タイトル名}
\author{著者名}
\date{作成日}

\begin{document}
  \begin{titlepage}
    \maketitle
    \begin{center}
      \textmc{\HUGE \LaTeX}
    \end{center}
    \thispagestyle{empty}
  \end{titlepage}

\end{document}
```
上記の雛形は、1ページ目にタイトル名・著者・作成日・$\LaTeX$のロゴが入ります。本文は、2ページ以降になる形になっています。
以下、1ページ目の画像
![abcd_page-0001.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/c4d352d5-9710-7b99-c74a-1e32ac875040.jpeg)

### 意外に使用するのに苦労したLaTeXのコマンド
#### \begin{empheq}～\begin{empheq}
##### 使用するパッケージ
empheq
##### 作成例
```LaTeX
\documentclass[dvipdfmx,uplatex]{jsarticle}
\usepackage{empheq}

\begin{document}
  \begin{empheq}[left={\Omega=\empheqlbrace},right={\empheqrbrace}]{alignat=2}
    A(M) B(F)、A(F) B(F) \\
    A(M) B(M)、A(F) B(M)
  \end{empheq}
\end{document}
```
PDFでコンパイルすると、以下のような感じになります。
![スクリーンショット 2023-04-25 163532.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/55cd9895-f99d-243c-f890-ba6404a77db7.png)

#### ベン図を描画するためのコマンド
##### 使用するパッケージ
amsmath、amssymb、amsfonts、tikz、here
##### 作成例
まずは、$A \cap B$を描画してみます。
```LaTeX
\documentclass[dvipdfmx,uplatex]{jsarticle}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{tikz}
\usepackage{here}

\begin{document}
\begin{center}
  \textmc{$P(A \cap B)$\\}
\end{center}
\begin{figure}[H]
  \centering
  \begin{tikzpicture}
    \begin{scope} \clip (1,0) circle [radius=1];
      \fill[black!10!] (0,0) circle [radius=1];
    \end{scope}
    \draw (0,0) circle [radius=1];
    \draw (1,0) circle [radius=1];
    \draw ({cos(pi*3/4 r)},{sin(pi*3/4 r)}) node[fill=white]{A};
    \draw ({1+cos(pi/4 r)},{sin(pi/4 r)}) node[fill=white]{B};
  \end{tikzpicture}
\end{figure}
\end{document}
```
コンパイルすると以下のような感じになります。
![スクリーンショット 2023-04-25 170955.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/b0d7b92c-084e-2373-ef69-c6ce55bc1176.png)
##### 作成例
$A \cap B^c$も描画してみます。
```LaTeX
\documentclass[dvipdfmx,uplatex]{jsarticle}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{tikz}
\usepackage{here}

\begin{document}
\begin{center}
  \textmc{$P(A \cap B^c)$\\}
\end{center}
\begin{figure}[H]
  \centering
  \begin{tikzpicture}
    \begin{scope} \clip (0,0) circle [radius=1];
      \fill[black!10!] (0,0) circle [radius=1];
      \fill[white!] (1,0) circle [radius=1];
    \end{scope}
    \draw (0,0) circle [radius=1];
    \draw (1,0) circle [radius=1];
    \draw ({cos(pi*3/4 r)},{sin(pi*3/4 r)}) node[fill=white]{A};
    \draw ({1+cos(pi/4 r)},{sin(pi/4 r)}) node[fill=white]{B};
  \end{tikzpicture}
\end{figure}
\end{document}
```
コンパイルすると以下のような感じになります。
![スクリーンショット 2023-04-25 171010.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/8e9a8339-5838-83f0-e061-f9cfc8efde10.png)
#### ツリー構造を記述するコマンド
##### 使用するパッケージ
tree
※tree.styファイルは、自分でダウンロードする必要があります。
以下、ダウンロードリンク
http://hayato1224.web.fc2.com/tree.sty
##### 作成例
```LaTeX
\documentclass[dvipdfmx,uplatex]{jsarticle}
\usepackage{tree}

\begin{document}
  \centerline{
    \ROOT{動物}{
      \LEAF{神}
      \BRANCH{哺乳類}{\LEAF{人間}\LEAF{ツキノワグマ}\LEAF{バンドウイルカ}\LEAF{カモノハシ}}
      \BRANCH{鳥類}{\LEAF{アヒル}\LEAF{ペンギン}}
      \BRANCH{両生類}{
        \BRANCH{カエル}{
          \LEAF{トノサマカエル}\LEAF{ツチガエル}
        }
        \LEAF{オオサンショウウオ}\LEAF{アカハライモリ}}
  }}
\end{document}
```
\ROOTがツリー構造の幹の部分、\BRANCH、\LEAFがツリー構造の枝葉の部分になります。
4階層以上のツリー構造にする場合は、\ROOT → \BRANCH → \BRANCH → \LEAF のようにします。
2階層の構造にする場合は、\ROOT → \LEAFのようにします。
コンパイルすると以下のような感じになります。
![スクリーンショット 2023-04-25 224649.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/68827016-717e-e954-864b-1a1b1c4b02b6.png)

#### \left\\{ \right\\}に注意
##### 使用するパッケージ
なし
##### 説明
カッコ、中カッコ、大カッコそれぞれについて、中身の内容によってカッコの大きさを自動調節するコマンドについての紹介です。カッコの場合は、```\right( \left)```、大カッコの場合は、```\right[ \left]```であるのに対し、中カッコは、```\left\{ \right\}```であることに注意して使いましょう。

#### 作成例
```LaTeX
  \begin{equation}
    \left[ 
      \left\{
        \left( \frac{1}{k} \right) + \left( \frac{1}{n} \right)
      \right\}
      \times \frac{1}{3}
    \right]
  \end{equation}
```
コンパイルすると以下のような感じになります。
![スクリーンショット 2023-05-10 130439.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/f9571dda-b4cd-bbba-bff9-da1c429d78ec.png)

#### 右肩上がりの3点ドット
##### 使用するパッケージ
mathdots
※mathdotsは、自分でダウンロードする必要があります。
以下、ダウンロードリンク(サイト内のDownloadを押すと、zipファイルがダウンロードされます。)
https://ctan.org/tex-archive/macros/generic/mathdots
ダウンロードされたzipファイルを展開し、mathdots.dtxとmathdots.insをtexファイルと同一のディレクトリに置くと利用できるようになります。
##### 作成例
※作成例では、amsmathも使用しています。
```LaTeX
  \begin{displaymath}
    \begin{vmatrix}
            &                 &         &                 & a_{1} \\
            & \text{\huge{0}} &         & a_{2}           &       \\
            &                 & \iddots &                 &       \\
            & \iddots         &         & \text{\huge{0}} &       \\
      a_{n} &                 &         &                 &   
    \end{vmatrix}
  \end{displaymath}
```
コンパイルすると以下のような感じになります。
![スクリーンショット 2023-07-15 005421.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/01acfee0-823d-86bc-5ae5-f56e93641c8c.png)

#### 数式を記述する環境
##### 使用するパッケージ
なし
#### 説明
eqnarrayの場合は、番号付きになります。eqnarray*の場合は、番号なしになります。&&とすることで&&を基準に行同士をそろえることができます。この環境下で数式を記述するのが、自分の中で一番きれいに書けました。特に、いい感じに中央寄せしてくれることろが気に入っています
##### 作成例
※作成例では、bmも使用しています。
```LaTeX
  \begin{eqnarray*}
    &&(1)\\
    &&(\bm{e}_{4},\bm{e}_{3},\bm{e}_{2},\bm{e}_{1})\\
    &&\to (\bm{e}_{4},\bm{e}_{3},\bm{e}_{2},\bm{e}_{1})\\
    &&\to (\bm{e}_{3},\bm{e}_{4},\bm{e}_{2},\bm{e}_{1})\\
    &&\to (\bm{e}_{3},\bm{e}_{2},\bm{e}_{4},\bm{e}_{1})\\
    &&\to (\bm{e}_{2},\bm{e}_{3},\bm{e}_{4},\bm{e}_{1})\\
    &&\to (\bm{e}_{2},\bm{e}_{3},\bm{e}_{1},\bm{e}_{4})\\
    &&\to (\bm{e}_{2},\bm{e}_{1},\bm{e}_{3},\bm{e}_{4})\\
    &&\to (\bm{e}_{1},\bm{e}_{2},\bm{e}_{3},\bm{e}_{4})\\
  \end{eqnarray*}
```
コンパイルすると以下のような感じになります。
![スクリーンショット 2023-07-15 010407.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3052981/f7c95903-926b-f9cd-9e36-04ab4c5d9ad0.png)

 ### あとがき
$\LaTeX$を触るのは初めてでしたが、コンパイルが成功するかどうかののワクワク感を味わえるのは、$\LaTeX$の醍醐味だと思いました。
#### 皆さんもぜひ快適なTeXライフを！
### 参考にさせていただいたサイト
https://texwiki.texjp.org/

https://www.cosmo.sci.hokudai.ac.jp/~matryo/rigaku/TeX_cs.pdf

https://note.com/dan_oyama/n/nd6778c7d407d

https://mathlandscape.com/latex-cases/

https://konoyonohana.blog.fc2.com/blog-entry-257.html

https://hooktail.sub.jp/tex/symbol/amsmathsymbols.html

https://medemanabu.net/latex/operators/

https://mathlandscape.com/latex-sum/

https://mathlandscape.com/latex-mathcal/

https://medemanabu.net/latex/left-right/

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10102638310

https://mathlandscape.com/latex-matrix/

https://cns-guide.sfc.keio.ac.jp/2001/11/4/1.html