Seite 1 von 2
Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: So 30. Jan 2022, 17:36
von Schimmelpilz
Hallo an alle!
Ich hätte noch eine kleine Knobelaufgabe. Weiß jemand eine Möglichkeit um in TikZ freihändig mehrere Bild-Unter-Unterschriften einzufügen? Also ohne subfigure? So, dass ich eine beliebige \node einfach zur subcaption erklären kann?
Ich frage, weil die Ausrichtung der subfigures einem anderen Koordinatensystem entspringt als das TikZ-Bild. Sprich, wenn ich mehrere subfigures mit irgendwelchen Elementen verbinden möchte, muss ich immer fummeln, anstatt feste Koordinaten über die gesamte figure zu haben.
Beste Grüße,
SchiPi
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: So 30. Jan 2022, 18:07
von Gast.
Vorausgesetzt, du verwendest das sehr ausgezeichnete Paket
subcaption, so sei darauf hingewiesen, dass dieses auf
caption basiert. Ich vermute daher stark, dass man in dem Fall
\captionof für den passenden Sub-Typ verwenden könnte. Ausprobieren kann ich das in Ermangelung eines
Minimalbeispiel aber aktuell nicht.
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: So 30. Jan 2022, 18:08
von Gast.
Achso: Wenn du nur ein a), b), c) brauchst, aber keinen Text und keine Verzeichniseinträge, dann kannst du das natürlich einfach direkt als node einfügen.
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: So 30. Jan 2022, 18:27
von Schimmelpilz
Es geht ja darum, das im text zu verlinken.
\captionof benötigt ja auch eine Gleitumgebung, wie
minipage oder
subfigure. Ich möchte es aber freihändig zeichnen, so in etwa:
\documentclass[]{scrreprt}
\usepackage[font=small]{caption}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{cleveref}
\begin{document}
\begin{tikzpicture}
\draw (0,7) circle (2);
\node at (0,7) {Kreis 1 \label{fig:Kreis1}}; %%% Geht so leider nicht!!!
\draw (5,-2) circle (2);
\node at (5,-2) {Kreis 2 \label{fig:Kreis2}}; %%% Geht so leider nicht!!!
\end{tikzpicture}
Wie Sie sehen befindet sich \cref{fig:Kreis1} oben links und \cref{fig:Kreis2} unten rechts.
\end{document}
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: So 30. Jan 2022, 19:30
von Gast.
Ich verstehe leider noch immer nicht ganz, was das eigentliche Problem ist. Vermutlich bin ich zu blöd.
Aber wenn es einfach nur um Links, aber gar nicht wirklich um eine Bildunterschrift geht, dann verwende
\hyperref[<label>]{text} wie in Abschnitt 4 der
hyperref-Anleitung gezeigt. Ggf. brauchst du zusätzlich zu
\label dann auch noch
\phantomsection, damit der Anker stimmt. Auch diese Anweisung findest du in der
hyperref-Anleitung.
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: Mo 31. Jan 2022, 08:44
von Schimmelpilz
Ja, das Beispiel war auch etwas unausgegoren, ich versuche es nochmal so:
\documentclass[]{scrreprt}
\usepackage[font=small]{caption}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage[hidelinks]{hyperref}
\usepackage{cleveref}
\crefname{figure}{Fig.}{Fig.}
\Crefname{figure}{Fig.}{Fig.}
\begin{document}
\begin{figure}
\begin{tikzpicture}
\draw [->, right] (0,7) -- (5,-2) node at (2.5,2.5) {Soll so bleiben! Nix Gleitumgebung!};
\draw [fill=white] (0,7) circle (2);
\node [fill=white] at (0,7) {\subcaption{Kreis 1 \label{fig:Kreis1}}}; %%% Geht so leider nicht!!!
\draw [fill=white] (5,-2) circle (2);
\node [fill=white] at (5,-2) {\subcaption{Kreis 2 \label{fig:Kreis2}}}; %%% Geht so leider nicht!!!
\end{tikzpicture}
\caption{Die zwei Kreise}\label{fig:ZweiKreise}
\end{figure}
Wie Sie sehen befindet sich \cref{fig:Kreis1} oben links und \cref{fig:Kreis2} unten rechts in \cref{fig:ZweiKreise}.
\end{document}
Ich würde halt gerne die
\mbox oder
\subfigure vermeiden, um die Unter-Unterschriften bzw.
\subcaption freihändig zu platzieren. Die Gleitumgebungen
\mbox oder
\subfigure würden ja wieder alles verschieben.
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: Mo 31. Jan 2022, 10:59
von ich meine ja nur
Dein Beispiel ist nicht lauffähig. Der Befehl
\subcaption ist nicht definiert. Außerdem sind
minipage und
\mbox keine Gleitumgebungen. Daher ist noch immer unklar, was das soll. Ich versuche es trotzdem:
Wie von Gast gesagt, nur für Links genügen
\phantomsection,
\label und
\hyperref:
\documentclass[]{scrreprt}
%\usepackage[font=small]{caption}% Wird für das Beispiel gar nicht gebraucht-
\usepackage{tikz}
%\usepackage{pgfplots}% Wird für das Beispiel gar nicht gebraucht.
%\pgfplotsset{compat=1.18}% → https://texwelt.de/fragen/19163
\usepackage{hyperref}% Wenn man das bescheuerte hidelinks weglässt, kann man die Links auch erkennen!
\usepackage{cleveref}
\crefname{figure}{Fig.}{Fig.}
\Crefname{figure}{Fig.}{Fig.}
\begin{document}
\begin{figure}
\begin{tikzpicture}
\draw [->, right] (0,7) -- (5,-2) node at (2.5,2.5) {Soll so bleiben! Nix Gleitumgebung!};
\draw [fill=white] (0,7) circle (2);
\node [fill=white] at (0,7) {\phantomsection Kreis 1\label{fig:Kreis1}};
\draw [fill=white] (5,-2) circle (2);
\node [fill=white] at (5,-2) {\phantomsection Kreis 2\label{fig:Kreis2}};
\end{tikzpicture}
\caption{Die zwei Kreise}\label{fig:ZweiKreise}
\end{figure}
Wie Sie sehen befindet sich \hyperref[fig:Kreis1]{Kreis 1} oben links und \hyperref[fig:Kreis2]{Kreis 2} unten rechts in \cref{fig:ZweiKreise}.
\end{document}
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: Mo 31. Jan 2022, 11:09
von Schimmelpilz
Das
bescheuerte hidelinks
sieht für mein Auge im Text aber deutlich besser aus, anstatt dort ein buntes Feuerwerk an crosslinks abzufackeln.
Mir geht es hier aber darum, dass im Text auch entsprechend als Fig. 1(a) und Fig. 1 (b) zitiert wird, wie man es eben von
\subcaption kennt.
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: Mo 31. Jan 2022, 11:43
von ich meine ja nur
Ich weiß noch immer nicht, was du willst, weil du leider weder vernünftigen Code noch vernünftige Infos lieferst. Wenn du jedenfalls auf Nummern verweisen willst, dann brauchst du auch Nummern in der Abbildung. Sonst ergibt das ja keinen Sinn. Und wenn du
\subcaption verwenden willst, brauchst du natürlich auch ein Paket, das diese Anweisung bereitstellt. Ich spekuliere jetzt letztmalig, dass du vielleicht:
\documentclass[]{scrreprt}
\usepackage{subcaption}% Ohne das funktioniert \subcaption logischerweise nicht.
\usepackage{tikz}
\usepackage[colorlinks]{hyperref}% Im Gegensatz hidelinks kann man so die Links wenigstens erkennen.
\usepackage{cleveref}
\crefname{figure}{Fig.}{Fig.}
\Crefname{figure}{Fig.}{Fig.}
\begin{document}
\begin{figure}
\begin{tikzpicture}
\draw [->, right] (0,7) -- (5,-2) node at (2.5,2.5) {Soll so bleiben! Nix Gleitumgebung!};
\draw [fill=white] (0,7) circle (2);
\node [fill=white,text width=5em] at (0,7) {\subcaption{Kreis 1 \label{fig:Kreis1}}}; %%% Geht so leider nicht!!!
\draw [fill=white] (5,-2) circle (2);
\node [fill=white,text width=5em] at (5,-2) {\subcaption{Kreis 2 \label{fig:Kreis2}}}; %%% Geht so leider nicht!!!
\end{tikzpicture}
\caption{Die zwei Kreise}\label{fig:ZweiKreise}
\end{figure}
Wie Sie sehen befindet sich \cref{fig:Kreis1} oben links und \cref{fig:Kreis2} unten rechts in \cref{fig:ZweiKreise}.
\end{document}
suchst. Das passt zwar absolut nicht zu deiner Ausgangsbeschreibung, aber ich habe jetzt auch keine Lust mehr, dir alle Informationen wie Würmer aus der Nase zu ziehen. Ich habe hier schon zuviel Zeit unnötig verschwendet, weil du das Problem einfach nicht ordentlich spezifizierst. Nachdem du trotz Gast's Kommentaren nichts vernünftiges geliefert hast, hätte ich es einfach bleiben lassen sollen. Das Risiko für einen derart frustrierenden Verlauf hätte ich eigentlich gleich sehen sollen.
Re: Subcaption freihändig in TikZ, ohne Subfigure?
Verfasst: Mo 31. Jan 2022, 12:03
von Schimmelpilz
Okay, ja der geht auf meine Kappe.
Entschuldigt bitte, ich hätte sehen müssen, dass einfach nur das subcation-Paket fehlt. Hatte das wohl einfach mit dem überflüssigen caption-Paket durcheinandergehauen. Hätte ja dann damit auch schon in meinem zweiten MWE geklappt.
In diesem Sinne: Danke abermals für Eure Hilfe, und ist wieder gut jetzt hoffentlich.
Beschde
p.s. Mir genügt es trotzdem, wenn man die Links einfach per Mauszeiger erkennt. Wenn so in jeder zweiten Zeile der Diss irgendwelche bunten Referenzen plus die Links zu Bildern etc. auftauchan, wird das einfach zu wild. Der aufmerksame Leser wird es hoffentlich merken, wenn standardmäßig der Mauszeiger zum Zeigefinger wird.