Draw an arrow that connect each column by the corresponding entry in LaTeX

  • Context: LaTeX 
  • Thread starter Thread starter EngWiPy
  • Start date Start date
  • Tags Tags
    Column Latex
EngWiPy
Messages
1,361
Reaction score
61
Hello,

I have the following Latex code, and I need to draw an arrow that connect each column by the corresponding entry in the last (separated) row, e.g.: the column [x_0^{(1)} x_0^{(2)} ... x_0^{(M)}]^T with the entry x_0^{(R)} and so on. How can I do that?

Code:
\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath}
\usetikzlibrary{matrix}
\begin{document}

\tikzset{ 
    table/.style={
        matrix of nodes,
        row sep=-\pgflinewidth,
        column sep=-\pgflinewidth,
        nodes={
            rectangle,
            draw=black,
            align=center
        },
        minimum height=1.5em,
        text depth=0.5ex,
        text height=2ex,
        nodes in empty cells,
%%
        %every even row/.style={
            %nodes={fill=gray!20}
        %},
        column 1/.style={
            nodes={text width=2em,font=\bfseries}
        },
				column 2/.style={
            nodes={text=red}
        },
				column 3/.style={
            nodes={text=blue}
        },
				column 5/.style={
            nodes={text=violet}
        },
        row 5/.style={
            nodes={
                fill=gray!20,
                %text=black,
                font=\bfseries
            }
        }
    }
}

\begin{tikzpicture}

\matrix (first) [table,text width=6em]
{
$\mathbf{x}^{(1)}$   & $x_0^{(1)}$ & $x_1^{(1)}$ & $\cdots$ & $x_{N-1}^{(1)}$ \\
$\mathbf{x}^{(2)}$   & $x_0^{(2)}$ & $x_1^{(2)}$ & $\cdots$ & $x_{N-1}^{(2)}$ \\
$\vdots$             & $\vdots$    & $\vdots$    & $\ddots$ & $\vdots$ \\
$\mathbf{x}^{(M)}$   & $x_0^{(M)}$ & $x_1^{(M)}$ & $\cdots$ & $x_{N-1}^{(M)}$ \\[10mm]
$\mathbf{x}^{(R)}$   & $x_0^{(R)}$ & $x_1^{(R)}$ & $\cdots$ & $x_{N-1}^{(R)}$ \\
};


\end{tikzpicture}
\end{document}

Thanks in advance
 
Physics news on Phys.org
I did one for you. I checked out this site for examples, always love learning new latex packages.

www.texample.net/tikz/examples/feature/arrows/

Basically I labelled to areas using the label maker for nodes : |[name=a]|

Then after the matrix I drew an arrow from a to b. So repeat wherever you need it.

Code:
\matrix (first) [table,text width=6em]
{
$\mathbf{x}^{(1)}$   & $x_0^{(1)}$ & $x_1^{(1)}$ & $\cdots$ & $x_{N-1}^{(1)}$ \\
$\mathbf{x}^{(2)}$   & $x_0^{(2)}$ & $x_1^{(2)}$ & $\cdots$ & $x_{N-1}^{(2)}$ \\
$\vdots$             & $\vdots$    & $\vdots$    & $\ddots$ & $\vdots$ \\
|[name=a]| $\mathbf{x}^{(M)}$   & $x_0^{(M)}$ & $x_1^{(M)}$ & $\cdots$ & $x_{N-1}^{(M)}$\\[10mm]
|[name=b]| $\mathbf{x}^{(R)}$   & $x_0^{(R)}$ & $x_1^{(R)}$ & $\cdots$ & $x_{N-1}^{(R)}$ \\
};
 \draw[->,thick] (a) edge (b);
 
Hepth said:
I did one for you. I checked out this site for examples, always love learning new latex packages.

www.texample.net/tikz/examples/feature/arrows/

Basically I labelled to areas using the label maker for nodes : |[name=a]|

Then after the matrix I drew an arrow from a to b. So repeat wherever you need it.

Code:
\matrix (first) [table,text width=6em]
{
$\mathbf{x}^{(1)}$   & $x_0^{(1)}$ & $x_1^{(1)}$ & $\cdots$ & $x_{N-1}^{(1)}$ \\
$\mathbf{x}^{(2)}$   & $x_0^{(2)}$ & $x_1^{(2)}$ & $\cdots$ & $x_{N-1}^{(2)}$ \\
$\vdots$             & $\vdots$    & $\vdots$    & $\ddots$ & $\vdots$ \\
|[name=a]| $\mathbf{x}^{(M)}$   & $x_0^{(M)}$ & $x_1^{(M)}$ & $\cdots$ & $x_{N-1}^{(M)}$\\[10mm]
|[name=b]| $\mathbf{x}^{(R)}$   & $x_0^{(R)}$ & $x_1^{(R)}$ & $\cdots$ & $x_{N-1}^{(R)}$ \\
};
 \draw[->,thick] (a) edge (b);

Perfect. Look very nice. Thanks
 
Another question: How can I remove a cell completely?
 

Similar threads

  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 1 ·
Replies
1
Views
4K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 0 ·
Replies
0
Views
6K
  • · Replies 7 ·
Replies
7
Views
4K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 0 ·
Replies
0
Views
5K
  • · Replies 2 ·
Replies
2
Views
5K
  • · Replies 4 ·
Replies
4
Views
3K