Sejajarkan ketidaksetaraan dalam kasus

Aug 19 2020

Konteks

Saya menggunakan casesdi dalam dokumen R-Markdown untuk menampilkan rumus (ini untuk konteks karena saya tidak sepenuhnya mengetahui alat mana yang digunakan Rmarkdown untuk mengeset rumus pada akhirnya). Tetapi pada akhirnya (IMHO) tidak ada hubungannya dengan rmarkdown tetapi LaTeXmasalah murni (selain itu mungkin menjadi lebih sulit untuk menambahkan paket atau perintah eksternal yang bukan bagian dari rantai alat Rmarkdown)

Masalah

Saya ingin menyelaraskan ketidaksetaraan di sisi kanan caseslingkungan. Masalahnya adalah untuk kasus sudut saya tidak memiliki batas bawah sehingga ketidaksamaan tidak sejajar lagi.

Saya mencoba mengisi celah dengan \phantomtetapi karena saya harus mengganti \leqtanda, jaraknya tidak sejajar (saya baca di sini yang LaTeXmenambahkan \thickmuskipsetelah operator ketidaksetaraan dan saya kira inilah yang hilang. Namun, saya tidak dapat menambahkan \thickmuskipRmarkdown) .

(NB Saya tahu bahwa pertanyaan itu tidak masuk akal;) - tapi jelas bukan itu intinya)

\begin{cases}
1, & \text{if}\ \phantom{{-1.0}<} x_i < -0.2\\                % too little space
2, & \text{if}\ {-0.2} \leq x_i < -0.1\\                      % add brackets around to -0.2 to treat `-` as unary
3, & \text{if}\ {-0.1} \leq x_i < \phantom{-}0.1 \\
4, & \text{if}\ \phantom{{-}}0.1 \leq x_i < \phantom{-}0.5\\
5, & \text{if}\ \phantom{{-0.5}<1} x_i < \phantom{-}5.0       % too much space
\end{cases}

Keluaran

Jawaban

3 DonaldArseneau Aug 19 2020 at 08:41

Karena jarak di sekitar operator biner infix bergantung pada apa yang mengelilinginya, mereka bisa kehilangan spasi ketika muncul di tepi daftar matematika bagian dalam (melawan tanda kurung). Anda telah memanfaatkan ini untuk memastikan tanda minus tetap sebagai minus yang tidak jelas (angka negatif). Baik! (Meskipun tidak diperlukan dalam beberapa kasus.) Masalahnya muncul dengan simbol relasi yang muncul di akhir bayangan.

Anda dapat menambahkan spasi eksplisit ( \;) untuk mengimbangi, atau Anda dapat memberikan sesuatu untuk memulihkan perlakuan hubungan-biner:

\begin{cases}
1, & \text{if}\ \phantom{{-1.0}<{}} x_i < -0.2\\
2, & \text{if}\ {-0.2} \leq x_i < -0.1\\
3, & \text{if}\ {-0.1} \leq x_i < \phantom{-}0.1 \\
4, & \text{if}\ \phantom{{-}}0.1 \leq x_i < \phantom{-}0.5\\
5, & \text{if}\ \phantom{{-0.5}<{}} x_i < \phantom{-}5.0 
\end{cases}
4 egreg Aug 19 2020 at 09:05

Anda dapat menggunakan array:

\documentclass{article}
\usepackage{amsmath,array}

\begin{document}

\begin{equation*}
\left\{
\renewcommand{\arraystretch}{1.2} % like cases does
\setlength{\arraycolsep}{0pt} % we don't want padding
\begin{array}{
  l           % value
  @{\quad}    % like cases does
  >{$}l<{ $}  % text column with trailing normal space
  r           % lower bound
  >{{}}c<{{}} % relation
  c           % variable
  >{{}}c<{{}} % relation
  r           % upper bound
}
1, & if &      &     & x_i & < &  0.2 \\
2, & if & -0.2 & \le & x_i & < & -0.1 \\
3, & if & -0.1 & \le & x_i & < &  0.1 \\
4, & if &  0.1 & \le & x_i & < &  0.5 \\
5, & if &  0.5 & \le & x_i
\end{array}
\right.
\end{equation*}

\end{document}

Alih-alih \left\{\renewcommand{\arraystretch}{1.2}dan \right.Anda dapat menggunakan \begin{cases}dan \end{cases}(dengan mengorbankan sedikit pergeseran ke kiri dari keseluruhan tampilan.

3 Bernard Aug 19 2020 at 09:09

Anda juga memiliki kemungkinan yang lebih sederhana dengan alignedatkasus bersarang. Saya tidak yakin itu adalah ide yang baik untuk menyelaraskan angka-angka di akhir baris, sebagai tambahan untuk menyelaraskan <tanda - tandanya. Jadi saya menambahkan kode varian, menggunakan empheqpaket, tanpa perataan akhir ini. Ini menambahkan kemungkinan untuk memberi nomor atau subnumber setiap baris, yang mungkin berguna dalam beberapa situasi:

\documentclass[a4paper,12pt]{article}

\usepackage{array}
\usepackage{empheq}

\begin{document}

 \[ \begin{cases}
\begin{alignedat}{3} &1, &\quad & \text{if} & x_i &< -0.2\\ &2, & &\text{if} & \quad -0.2 \leq x_i &< -0.1\\ &3, & &\text{if} &-0.1 \leq x_i & < \phantom{-}0.1 \\ &4, & &\text{if} & \phantom{{-}}0.1 \leq x_i &< \phantom{-}0.5\\ &5, & &\text{if} & x_i &< \phantom{-}5.0 % too much space \end{alignedat}
\end{cases} \]
\vspace{1cm}

\begin{subequations}
 \begin{empheq}[left=\empheqlbrace]{alignat=3}
&1, &\quad & \text{if} & x_i &< -0.2\\
&2, & &\text{if} & \quad -0.2 \leq x_i &< -0.1\\
&3, & &\text{if} &-0.1 \leq x_i & < 0.1 \\
&4, & &\text{if} & \phantom{{-}}0.1 \leq x_i &< 0.5\\
&5, & &\text{if} & x_i &< 5.0 % too much space
\end{empheq}
\end{subequations}

\end{document} 

2 F.Pantigny Aug 19 2020 at 12:40

Jika Anda tidak ingin menomori persamaan, saya akan menggunakan arrayseperti yang disarankan dalam jawaban orang lain. Namun, jika Anda ingin nomor persamaan, Anda dapat menggunakan {DispWithArrow}dari witharrows:

\documentclass{article}
\usepackage{witharrows}
\usepackage{amsmath}

\begin{document}

\begin{DispWithArrows}<f(x_i)=>[format=lrrcccr]
1, & \quad \text{if } &        &         & x_i & {}<{} &  0.2 \\
2, &       \text{if } & {-0.2} & {}\le{} & x_i & {}<{} & {-0.1} \\
3, &       \text{if } & {-0.1} & {}\le{} & x_i & {}<{} &  0.1 \\
4, &       \text{if } &  0.1   & {}\le{} & x_i & {}<{} &  0.5 \\
5, &       \text{if } &  0.5   & {}\le{} & x_i
\end{DispWithArrows}

\end{document}

1 thothal Aug 19 2020 at 08:25

Ok, ternyata saya salah paham \thickmuskipyang mana itu panjang, bukan perintah. \;harus menambahkan ini:

\begin{cases}
1, & \text{if}\ \phantom{{-1.0}<}\; x_i < -0.2\\
2, & \text{if}\ {-0.2} \leq x_i < -0.1\\
3, & \text{if}\ {-0.1} \leq x_i < \phantom{-}0.1 \\
4, & \text{if}\ \phantom{{-}}0.1 \leq x_i < \phantom{-}0.5\\
5, & \text{if}\ \phantom{{-0.5}<}\; x_i < \phantom{-}5.0 
\end{cases}