Erstellen Sie eine Fußnote im Knoten in einem Tikz-Bild

Erstellen Sie eine Fußnote im Knoten in einem Tikz-Bild

Ich möchte einem Knoten in einem TikZ-Bild eine Fußnote hinzufügen, aber jede Lösung, die ich mir vorstellen kann, schlägt fehl. Ich habe auch versucht, eine Miniseite zu verwenden.

\documentclass[a4paper,10pt]{scrartcl}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
\foreach \x/\y/\number/\year in {
  0.5/0.46/ 4.624/2001,
  1.5/0.89/ 8.965/2002\footnotemark,
  2.5/1.18/11.892/2003
}
{
  \draw (\x cm, 0 cm) rectangle (0.5 cm + \x cm, \y cm) node at (0.25 cm + \x cm, \y cm + 0.25 cm) {\tiny\number};
  \node[rotate=45, left] at (0.6 cm +\x cm,-0.1cm) {\year};
};
\end{tikzpicture}
\footnotetext{foo}
\end{document}

Die angezeigte Ausgabe ist

! Missing number, treated as zero.
<to be read again>
               }
l.18   }
    ;

Der Fußnotentext wird korrekt angezeigt, das Fußnotenzeichen jedoch nicht.

Ich habe versucht, eine Minipage wie folgt zu verwenden. Ich habe ersetzt

\node[rotate=45, left] at (0.6 cm +\x cm,-0.1cm) {\year};

mit

\node[rotate=45, left] at (0.6 cm +\x cm,-0.1cm) {\begin{minipage}{2em}\year\end{minipage}};

Folgefrage: Wie erstelle ich mit dem Hyperref-Paket mehrere Fußnoten?

\documentclass[a4paper,10pt]{scrartcl}
\usepackage{tikz}

\usepackage[
pdfpagelabels,
pdfstartview=FitH,
plainpages=false,
hypertexnames=false
]{hyperref}

\begin{document}

\begin{tikzpicture}

  \foreach \x/\y/\Number/\Year in {
      0.5/0.46/ 4.624/2001,
      1.5/0.89/ 8.965/2002\footnotemark,
      2.5/1.18/11.892/2003\footnotemark
  }
  {
    \draw (\x cm, 0 cm) rectangle (0.5 cm + \x cm, \y cm) node at (0.25 cm + \x cm, \y cm + 0.25 cm) {\tiny\Number};
    \node[rotate=45, left] at (0.6 cm +\x cm,-0.1cm) {\Year};


  };

\end{tikzpicture}

\footnotetext{foo1}
\footnotetext{foo2}

\end{document}

Antwort1

Die Verwendung in diesem Kontext ist ziemlich gefährlich \number, da es sich um ein wichtiges Grundelement von TeX handelt, das tatsächlich zum Drucken der Fußnotennummer verwendet wird. Aus diesem Grund entsteht in TeX große Verwirrung: Es bedeutet etwas völlig Unerwartetes, wenn die ursprüngliche Bedeutung verwendet werden muss.

Ist auch \yearein Primitiv; es ist besser, auch dafür einen anderen Namen zu verwenden.

\documentclass[a4paper,10pt]{scrartcl}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
\foreach \x/\y/\Number/\Year in {
  0.5/0.46/ 4.624/2001,
  1.5/0.89/ 8.965/2002\footnotemark,
  2.5/1.18/11.892/2003
}
{
  \draw (\x cm, 0 cm) rectangle (0.5 cm + \x cm, \y cm)
        node at (0.25 cm + \x cm, \y cm + 0.25 cm) {\tiny\Number};
  \node[rotate=45, left] at (0.6 cm +\x cm,-0.1cm) {\Year};
};
\end{tikzpicture}
\footnotetext{foo}
\end{document}

Bildbeschreibung hier eingeben

Antwort2

Ich würde footnotehyperein Paket empfehlen, damit es für mehrere Links im selben Dokument funktioniert.

So ziemlich die gleiche Analyse inmeine Antwort für „Tabellen – Fußnote in tabellarischer Umgebung – TeX – LaTeX Stack Exchange“anwenden.

Beispiel: (beachten Sie, dass Sie nur die 2 mit gekennzeichneten Zeilen hinzufügen müssen % <<<, sonst muss nichts geändert werden)

\documentclass{article}
\usepackage{tikz}
\usepackage{footnotehyper}     % <<<
\makesavenoteenv{tikzpicture}  % <<<
\usepackage{hyperref}
\begin{document}
\begin{tikzpicture}
    \draw (0, 0) -- (1, 2);
    \node at (0, 0) {Text\footnote{Footnote text}};
\end{tikzpicture}
\end{document}

verwandte Informationen