Ich möchte gerne einem node ein Kommentar auf der linken oder rechten Seite hinzufügen. Dabei soll der Abstand zum node immer identisch sein auch wenn ich die Breite des nodes anpasse.

alt text

Open in Online-Editor
\documentclass[tikz,border=5pt]{standalone}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage{tikz}
\usetikzlibrary{shapes,shapes.multipart}

% Define block styles
\tikzset{
   papProcess/.style = {
         rectangle,
         draw,
         align = center, 
         text width = 3cm, 
         text badly centered,
         minimum width = 30mm,
         minimum height = 7mm,
      }
}

\begin{document}
\begin{tikzpicture}
% Place nodes
\node [papProcess,label={[shift={(2.7,-0.6)}]\footnotesize\textit{label 1}}] (predproc1){Prozess};

\end{tikzpicture}

\end{document}

gefragt 19 Okt, 06:36

Giovario's gravatar image

Giovario
3301819
Akzeptiert: 88%

bearbeitet 19 Okt, 08:10

Clemens's gravatar image

Clemens
19.0k113060


Obwohl ich es wohl auch eher machen würde, wie von @sudo gezeigt:

Statt ein Label zu verwenden, kann man auch mit der positioning-Library einen weiteren Node setzen:

Open in Online-Editor
\documentclass[tikz,border=5pt]{standalone}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage{tikz}
\usetikzlibrary{shapes,shapes.multipart}
\usetikzlibrary{positioning}

% Define block styles
\tikzset{
   papProcess/.style = {
         rectangle,
         draw,
         align = center, 
         text width = 3cm, 
         text badly centered,
         minimum width = 30mm,
         minimum height = 7mm,
      },
   nlabel/.style = {font=\footnotesize\itshape,node distance=2cm}
}

\begin{document}
\begin{tikzpicture}
% Place nodes
\node [papProcess] (predproc1) {Prozess};
\node [nlabel,right=of predproc1] (label1) {Label 1};

\end{tikzpicture}

\end{document}
Permanenter link

beantwortet 19 Okt, 07:11

saputello's gravatar image

saputello
18.4k22352

Wieso würdest du das so machen wie @sudo es gezeigt hat? Ich finde bei deiner Lösung kann man die nLabels besser gruppieren und findest so entsprechend schneller den entsprechenden Kommentar den man sucht.

(19 Okt, 08:11) Giovario

@Giovario: Weil Label und Node dabei stärker gebunden sind. Und schließlich ist die Label-Möglichkeit für so etwas vorgesehen. Wie das bei Deinem tatsächlichen Dokument ist, kann ich natürlich nicht beurteilen. Letztlich ist es eine Frage der Sichtweise. Deshalb habe ich die Möglichkeit überhaupt gezeigt. Es kann immer Fälle geben, in denen Alternativen nützlich sind.

(19 Okt, 08:35) saputello

@saputello: Das ist dann genau das was ich in meinem eigentlichen Dokument benötige.

(19 Okt, 08:43) Giovario

Statt das Label manuell zu verschieben, lege die Richtung fest, in dem das Label angebracht werden soll. Das geht mit label={<Richtung>:<Text>}. Man kann für Richtung sowohl Winkel in Grad, als auch die Begriffe right, above, left, below verwenden.

Um dann noch den Abstand anzupassen dient die Option [label distance=<Abstand>].

Man kann auch den Stil eines jeden Labels anpassen. Für Labels eines einzelnen Stil geht das mit prefix after command= {\pgfextra{\tikzset{every label/.append style={blue}}}} für alle Labels geht da mit every label/.style = {font=\footnotesize\itshape,label distance=1cm}.

Open in Online-Editor
\documentclass[tikz,border=5pt]{standalone}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage{tikz}
\usetikzlibrary{shapes,shapes.multipart}

% Define block styles
\tikzset{
   papProcess/.style = {
         rectangle,
         draw,
         align = center, 
         text width = 3cm, 
         text badly centered,
         minimum width = 30mm,
         minimum height = 7mm,
         prefix after command= {\pgfextra{\tikzset{every label/.append style={blue}}}}% Alle Labels an nodes mit papProcess
   },
   every label/.style = {font=\footnotesize\itshape,label distance=1cm}% wirklich alle Labels
}

\begin{document}
\begin{tikzpicture}
% Place nodes
\node [papProcess,label={right:label 1}] (predproc1){Prozess};

\end{tikzpicture}

\end{document}

Hinweis: Die Antwort ist inspiriert von jener von Jake auf diese Frage auf TeX.sx

Permanenter link

beantwortet 19 Okt, 07:03

sudo's gravatar image

sudo
1.9k1817

bearbeitet 19 Okt, 07:26

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×492
×51
×10
×8

Frage gestellt: 19 Okt, 06:36

Frage wurde angeschaut: 237 Mal

Zuletzt aktualisiert: 19 Okt, 08:43