2017-10-28 13 views
1

私はrmarkdownのボックス内の整列方程式を取得しようとしています。私はpdfに編みだしています。rmarkdownのボックス内で方程式を整列する

私が使用するYAMLメタデータが自動的にすべてのテキストを左揃えにするためですが、方程式を中央に揃えたいからです。

ここに私のrmarkdownコードです。あなたがそれを実行したときに見られるように、方程式は中心に置かれていますが、=符号の2番目の組は2つの線に揃えられていません。

ご迷惑をおかけして申し訳ございません。

--- 
title: "Aligning equations in a box" 
output: 
    pdf_document: default 
    html_document: null 
    word_document: null 
toc: yes 
linestretch: 1.3 
classoption: fleqn 
header-includes: 
- \setlength{\mathindent}{0pt} 
- \setlength\parindent{0pt} 
--- 


\setlength{\abovedisplayskip}{-15pt} 
\setlength{\belowdisplayskip}{1pt} 
\setlength{\abovedisplayshortskip}{1pt} 
\setlength{\belowdisplayshortskip}{1pt} 

```{r global_options, include=FALSE, echo = FALSE} 

knitr::opts_chunk$set(fig.width=12, fig.height=8, fig.path='Figs/', 
         echo=FALSE, warning=FALSE, message=FALSE, dev = 'pdf') 
``` 

These words are automatically left-aligned by the YAML meta-data above so a box is necessary to centre equations. 

### Equation 11.6 

\[\large 
    \makebox[\linewidth]{$\displaystyle 
    \begin{aligned} 
       \text{when}\ PT &= 0:logit\ h(t_{j})\ &= [\alpha_{7}D_{7} + \alpha_{8}D_{8} + \cdots + \alpha_{12}D_{12}]\\ 
       \text{when}\ PT &= 1:logit\ h(t_{j})\ &= [\alpha_{7}D_{7} + \alpha_{8}D_{8} + \cdots + \alpha_{12}D_{12}] + \beta_{1} 
    \end{aligned} 
    $} 
\] 

答えて

1

わかりませんが、間に大きなスペースが必要ですか?ない場合は、あなただけの&

\[\large 
     \makebox[\linewidth]{$\displaystyle 
     \begin{aligned} 
        \text{when}\ PT =& 0:logit\ h(t_{j})\ = [\alpha_{7}D_{7} + \alpha_{8}D_{8} + \cdots + \alpha_{12}D_{12}]\\ 
        \text{when}\ PT =& 1:logit\ h(t_{j})\ = [\alpha_{7}D_{7} + \alpha_{8}D_{8} + \cdots + \alpha_{12}D_{12}] + \beta_{1} 
     \end{aligned} 
     $} 
    \] 

を削除することができ、これはあなたがスペースをしたい場合は、あなたが与える\qquadまたは\quad

\[\large 
     \makebox[\linewidth]{$\displaystyle 
     \begin{aligned} 
        \text{when}\ PT =& 0:logit\ h(t_{j})\ \qquad= [\alpha_{7}D_{7} + \alpha_{8}D_{8} + \cdots + \alpha_{12}D_{12}]\\ 
        \text{when}\ PT =& 1:logit\ h(t_{j})\ \qquad= [\alpha_{7}D_{7} + \alpha_{8}D_{8} + \cdots + \alpha_{12}D_{12}] + \beta_{1} 
     \end{aligned} 
     $} 
    \] 

のようなものを使用することができ

enter image description here

を与えます私

enter image description here

EDIT:

あなたのコメントで質問に答えます。 2つのブロックの間にブロックを囲みます。&

\[\large 
     \makebox[\linewidth]{$\displaystyle 
     \begin{aligned} 
        \text{whenmoretext}\ PT &= 0:logit\ h(t_{j})\ & &= [\alpha_{7}D_{7} + \alpha_{8}D_{8} + \cdots + \alpha_{12}D_{12}]\\ 
        \text{when}\ PT &= 1:logit\ h(t_{j})\ & &= [\alpha_{7}D_{7} + \alpha_{8}D_{8} + \cdots + \alpha_{12}D_{12}] + \beta_{1} 
     \end{aligned} 
     $} 
    \] 

enter image description here

+0

あなたは@shituoshanありがとうございます。それはうまくいきますが、 '='をアンカーして行間に整列させる '&'はありませんか? – llewmills

+0

@llewmillsはい、それはあなたが 'PT ='の後にやっていることで、行の最後に '\\'で中断します。これは、 '\ text {when} \ PT =&0:logit'と' \ text {when} \ PT = 1:logit'が同じ長さなので、ここで動作します。 – shitoushan

+1

そのうちの一つ(例えば\テキスト{whenthereismoretext}だけではなくの\テキスト? – llewmills

関連する問題