1

I would like to draw a simple array. I found this example. However it will not render for me:

\documentclass{beamer}
\usetheme{default}
\usepackage{tikz}
\usetikzlibrary{arrows.meta, calc}
\begin{document}

\begin{frame}{Frame Title}
    \begin{tikzpicture} [nodes in empty cells,
    nodes={minimum width=0.5cm, minimum height=0.5cm},
    row sep=-\pgflinewidth, column sep=-\pgflinewidth]
    border/.style={draw}

    \matrix(vector)[matrix of nodes,
    row 1/.style={nodes={draw=none, minimum width=0.3cm}},
    nodes={draw}]
    {
        \tiny{0} & \tiny{1} & \tiny{2} & \tiny{3}\\
        $a_{0}$ & $a_{1}$ & $a_{2}$ & $a_{3}$\\
    };
    \end{tikzpicture}
\end{frame}

\end{document}

I get:

! Package pgfkeys Error: I do not know the key '/tikz/nodes in empty cells' and I am going to ignore it. Perhaps you misspelled it.

What am I doing wrong?

1
  • Do you really need TikZ to draw such an array?
    – Bernard
    Aug 13, 2019 at 18:08

1 Answer 1

1

You need to add the matrix TikZ-library, and take tikz matrix undefined control sequence into account.

\documentclass{beamer}
\usetheme{default}
\usepackage{tikz}
\usetikzlibrary{arrows.meta, calc, matrix} % <-- added library
\begin{document}

\begin{frame}{Frame Title}
    \begin{tikzpicture} [nodes in empty cells,
    nodes={minimum width=0.5cm, minimum height=0.5cm},
    row sep=-\pgflinewidth, column sep=-\pgflinewidth]
%    border/.style={draw}

    \matrix(vector)[matrix of nodes, ampersand replacement=\&, % <- added ampersand replacement
    row 1/.style={nodes={draw=none, minimum width=0.3cm}},
    nodes={draw}]
    { % use \& instead of & as column separator
        \tiny{0} \& \tiny{1} \& \tiny{2} \& \tiny{3}\\
        $a_{0}$ \& $a_{1}$ \& $a_{2}$ \& $a_{3}$\\
    };
    \end{tikzpicture}
\end{frame}

\end{document}
2
  • I tried adding matrix but didn't realise the second trick! Thank you.
    – Simd
    Aug 13, 2019 at 17:59
  • @Anush You may have noticed that after adding the matrix library you got a different error message, indicating that adding the library fixed the error you mention in your question. Aug 13, 2019 at 18:00

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .