Subnodos en un vector en TikzEdt

Subnodos en un vector en TikzEdt

Estoy intentando mostrar dos vectores en dos nodos diferentes y luego vincular algunos elementos usando flechas.

\tikzstyle{line} = [draw, -latex']        
    \begin{tikzpicture}[node distance = 2cm,auto,remember picture]
        % Place nodes       
        \node [draw,rounded corners] (node1) {$\matrix[mymatrix, name=M1]{
                                                                1 \\
                                                        |[!]|   2\rho\pi \\
                                                        |[draw,rounded corners,fill=blue]|   3\\
                                                    }$};

     \node [draw,rounded corners] (node1) {$\matrix[mymatrix, name=M2]{
                                                                4 \\
                                                        |[!]|   2\lambda\pi \\
                                                        |[draw,rounded corners,fill=yellow]|   3\\
                                                    }$};    
   \draw [red, >=stealth, <->, shorten <= 3pt, shorten >=3 pt]
 (M1-2-1.south east) to[bend left=60] (M2-3-1.north east);     
    \end{tikzpicture}

En mi Preámbulo de Tikz tengo la siguiente declaración de paquete

\documentclass{article,fleqn}
\usepackage{tikz,amsmath, amssymb,bm,color,automata,matrix,positioning,fit}
\usepackage[margin=0cm,nohead]{geometry}
\usepackage[active,tightpage]{preview}
\usetikzlibrary{shapes,arrows}
% needed for BB
\usetikzlibrary{calc}
\usetikzlibrary{topaths}
\usetikzlibrary{decorations}
\usetikzlibrary{decorations.pathmorphing}
\usetikzlibrary{calc}
\usetikzlibrary{tikzmark}

\usetikzlibrary{topaths}
\usetikzlibrary{backgrounds}
\usepackage{todonotes}

%To be able to use 
\tikzset{
    !/.style = {
        fill=yellow!30,
    },
    mymatrix/.style = {
        matrix of math nodes,
        left delimiter  = (,
        right delimiter = ),
        nodes={minimum width=6ex},
    }
}
\tikzset{every picture/.style=remember picture}

\PreviewEnvironment{tikzpicture}

Probablemente estoy usando más de lo necesario, pero tengo otros archivos. Tikz me está dando el siguiente error:

Package amsmath Error: Old form '\matrix' should be \begin{\matrix}..de[draw,rounded corners](node1){$\matrix(followed by: [mymatrix, na 

Ya lo usé en Latex (gracias a la ayuda de algunos usuarios de Stackeschange), pero parece que no puedo hacerlo funcionar en Tikz. Si alguien tiene una sugerencia, por favor...

Salud.

Respuesta1

Su código tiene muchos problemas sintácticos.

En el siguiente código muestro dos posibilidades; el resaltado se realizó usando el \tcbhighmathcomando deltcolorboxpaquete; las flechas adicionales fueron dibujadas con la ayuda deltikzmarkbiblioteca:

\documentclass{article}
\usepackage{amsmath}
\usepackage[most]{tcolorbox}
\usetikzlibrary{tikzmark,positioning}

\tcbset{
myformulai/.style={
  colback=yellow!30,
  colframe=yellow!30,
  left=2pt,right=2pt,top=0pt,bottom=0pt,
  },
myformulaii/.style={
  colback=blue!30,
  boxrule=0.4pt,
  colframe=blue!30!black,
  left=2pt,right=2pt,top=0pt,bottom=0pt,
  },
myformulaiii/.style={
  colback=white,
  colframe=black,
  boxrule=0.4pt,
  left=2pt,right=2pt,top=0pt,bottom=0pt,
  }
}

\begin{document}

\[
\tcbhighmath[myformulaiii]{%
\begin{pmatrix}
     1 \\ \tcbhighmath[myformulai]{2\rho\pi\tikzmark{a}} \\ \tcbhighmath[myformulaii]{3}
\end{pmatrix}}
\]

\[
\tcbhighmath[myformulaiii]{%
\begin{pmatrix}
     1 \\ \tcbhighmath[myformulai]{2\rho \pi} \\ \tcbhighmath[myformulaii]{3}\tikzmark{b}
\end{pmatrix}}
\]

\begin{tikzpicture}[remember picture, overlay]
\draw [red, >=stealth, <->, shorten <= 3pt, shorten >=3 pt,overlay]
 (pic cs:a) to[bend left=90] (pic cs:b);
\end{tikzpicture}

\begin{center}
\begin{tikzpicture}[remember picture, overlay]
\node[rounded corners,draw] (mat1)
{
$\begin{pmatrix}
     1 \\ \tcbhighmath[myformulai]{2\rho\pi\tikzmark{c}} \\ \tcbhighmath[myformulaii]{3}
\end{pmatrix}$
};

\node[rounded corners,draw,below=of mat1] (mat2)
{
$\begin{pmatrix}
     1 \\ \tcbhighmath[myformulai]{2\rho \pi} \\ \tcbhighmath[myformulaii]{3}\tikzmark{d}
\end{pmatrix}$
};

\draw [red, >=stealth, <->, shorten <= 3pt, shorten >=3 pt,overlay]
 (pic cs:c) to[bend left=90] (pic cs:d);
\end{tikzpicture}
\end{center}

\end{document}

ingrese la descripción de la imagen aquí

información relacionada