Creare una matrice etichettata

  • Creatore
    Topic
  • #80589
    Up
    0
    Down
    ::


    ciao,

    devo creare una matrice con dei dati all’interno ma fuori la matrice, in corrispondenza di ogni riga e ogni colonna ci sia una intitolazione.
    Ho provato con il codice:

    `
    \begin{displaymath} \label{Figure 1}
    Avatar \qquad Matrix \qquad X-Men \\
    Alice\\
    Bob \\
    Charlie \\
    \begin{pmatrix}
    ? & \qquad 4 & \qquad 2\\
    3 & \qquad 2 & \qquad ?\\
    5 & \qquad ? & \qquad ?
    \end{pmatrix}\\
    \caption{Example of ratings matrix.}
    \end{displaymath}
    `

    ma le etichette (nomi degli utenti sulle righe, i film sulle colonne) appaiono una dietro l’altra sulla stessa riga.
    Qualcuno sa darmi una dritta?
    grazie.

Visualizzazione 2 filoni di risposte
  • Autore
    Risposte
    • #80590
      Up
      0
      Down
      ::

      peppepegasus” post=79775ciao,

      devo creare una matrice con dei dati all’interno ma fuori la matrice, in corrispondenza di ogni riga e ogni colonna ci sia una intitolazione.
      Ho provato con il codice:

      `
      \begin{displaymath} \label{Figure 1}
      Avatar \qquad Matrix \qquad X-Men \\
      Alice\\
      Bob \\
      Charlie \\
      \begin{pmatrix}
      ? & \qquad 4 & \qquad 2\\
      3 & \qquad 2 & \qquad ?\\
      5 & \qquad ? & \qquad ?
      \end{pmatrix}\\
      \caption{Example of ratings matrix.}
      \end{displaymath}
      `

      ma le etichette (nomi degli utenti sulle righe, i film sulle colonne) appaiono una dietro l’altra sulla stessa riga.
      Qualcuno sa darmi una dritta?
      grazie.

      `\documentclass[a4paper]{article}
      \usepackage{blkarray}
      \BAnewcolumntype{C}{>{$}c<{$}} \begin{document} \begin{table} \centering $\begin{blockarray}{CCCC} & Avatar & Matrix & X-Men \\ \begin{block}{C(CCC)} Alice & ? & 4 & 2 \\ Bob & 3 & 2 & ? \\ Charlie & 5 & ? & ? \\ \end{block} \end{blockarray}$ \caption{Example of rating matrix} \end{table} \end{document}` Ciao Enrico

    • #80591
      Up
      0
      Down
      ::


      Grazie mille!
      ciao

    • #80592
      Up
      0
      Down
      ::


      Mi sembra doveroso riportare un possibile approccio con TikZ:

      `\documentclass[a4paper,11pt]{article}
      \usepackage{amsmath,amssymb,tikz}
      \usetikzlibrary{matrix,positioning}

      \def\vertmathalign{-\the\dimexpr\fontdimen22\textfont2\relax}

      \tikzset{rnd delim matrix/.style={
      left delimiter=(,right delimiter=),
      ampersand replacement=\&, inner sep=1pt,
      every node/.style={anchor=base},row sep=0.75ex,
      column sep=0.5em,matrix of math nodes,
      minimum height=2ex,
      }
      }

      \tikzset{math node/.style={
      execute at begin node={$},
      execute at end node={$},
      text height=1ex,
      }
      }

      \begin{document}

      \begin{figure} \label{Figure 1}
      \centering
      \begin{tikzpicture}[baseline=\vertmathalign]
      \matrix (m)[rnd delim matrix,column sep=0.5cm]{
      ? \& \qquad 4 \& \qquad 2\\
      3 \& \qquad 2 \& \qquad ?\\
      5 \& \qquad ? \& \qquad ?\\
      };

      \foreach \elem/\text in {1/Alice,2/Bob,3/Charlie}
      \node

      {\text};

      \foreach \elem/\text in {1/Avatar,2/{\hspace*{0.4cm}Matrix},3/X-Men}
      \node[above=0.25cm of m-1-\elem, anchor=south,align=justify] {\text};

      \end{tikzpicture}
      \caption{Example of ratings matrix.}
      \end{figure}
      \end{document}`

      Ciao
      Claudio

Visualizzazione 2 filoni di risposte
  • Devi essere connesso per rispondere a questo topic.

Go to top