circle unterschiedlich groß trotz fixem radius

Tabellen und Grafiken erstellen und anordnen


MoonKid
Forum-Meister
Forum-Meister
Beiträge: 690
Registriert: Sa 30. Jun 2012, 11:56

circle unterschiedlich groß trotz fixem radius

Beitrag von MoonKid »

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \node at (0,0) [fill=blue,circle,inner sep=0em,radius=0.5em]{+};
    \node at (1,0) [fill=red,circle,inner sep=0em,radius=0.5em]{-};
    \node at (2,0) [fill=red,circle,inner sep=0em,radius=0.5em]{\(-\)};
    \node at (3,0) [fill=green,circle,inner sep=0em,radius=0.5em]{?};
    \node at (4,0) [fill=green,circle,inner sep=0em,radius=0.5em]{\(?\)};
\end{tikzpicture}
\end{document}
Hier sind zwei Probleme:

1.
Die farbigen Kreise sind nicht gleich groß. Insbesondere das Fragezeichen im Vergleich zum Rest.
Der Radius ist IMO aber eine fixe Größe (halbe Höhe des Buchstaben M). Daher verstehe ich nicht, warum es doch unterschiedlich groß ist.

2.
Das erste Minus ist relativ klein. Eine math-Umgebung löst das Problem, find ich aber übertrieben. Und evtl. ist das ja auch die Ursache für Problem 1? Gibt es ne Alternative zur math-Umgebung?
XeLaTeX, TeX Live, vim-latexsuite

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Das erste Minus ist kein Minus, sondern ein Bindestrich.
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

radius ist eine Option für den Pfad circle, also zum Beispiel für
\draw (1,0) circle [radius=.5em];
Für einen Node kannst Du minimum width, minimum height oder minimum size für die Mindestabmessungen angeben. Die müssen dann natürlich ausreichend groß gewählt sein. Also beispielsweise
\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[nodes={circle,inner sep=0pt,minimum size=1.1em}]
    \node at (0,0) [fill=blue]{+};
    \node at (1,0) [fill=red]{-};
    \node at (2,0) [fill=red]{$-$};
    \node at (3,0) [fill=green]{?};
    \node at (4,0) [fill=green]{\(?\)};
\end{tikzpicture}
\end{document}

MoonKid
Forum-Meister
Forum-Meister
Beiträge: 690
Registriert: Sa 30. Jun 2012, 11:56

Beitrag von MoonKid »

Mal ne Grundsatzfrage (*duck*):
Ich dachte \node[circle]... ist das gleiche wie \draw () circle, nur eine andere Schreibweise.

Da hab ich wohl gründlich was falsch verstanden, oder?


Nebenbei:
Haben schon diverse Argumente gegen tex-inline-math gelesen. u.a. http://texblog.net/latex-archive/maths/ ... math-mode/
Was sagt ihr Fachleute dazu?

Anekodote:
Wikipedia erklärt das Minus-Zeichen sehr schön. Da ich ja eine moderne Engine verwende, kopiere ich das einfach als Zeichen in den Code.... Tja, leider bietet der default Font scheinbar dieses Zeichen nicht. :D
Zuletzt geändert von MoonKid am Fr 22. Jul 2016, 12:50, insgesamt 1-mal geändert.
XeLaTeX, TeX Live, vim-latexsuite

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

MoonKid hat geschrieben:Mal ne Grundsatzfrage (*duck*):
Ich dachte \node[circle]... ist das gleiche wie \draw () circle, nur eine andere Schreibweise.

Da hab ich wohl gründlich was falsch verstanden, oder?
Ja ;-)

Ein Pfad ist im Prinzip eine Folge von Liniensegmenten, die gerade oder gekrümmt sein können. Ein Node ist eine mehr oder weniger einfache Form, die in einen Pfad eingefügt wird bzw. vor oder hinter diesem.

MoonKid
Forum-Meister
Forum-Meister
Beiträge: 690
Registriert: Sa 30. Jun 2012, 11:56

Beitrag von MoonKid »

esdd hat geschrieben:Ein Pfad ist im Prinzip eine Folge von Liniensegmenten, die gerade oder gekrümmt sein können. Ein Node ist eine mehr oder weniger einfache Form, die in einen Pfad eingefügt wird bzw. vor oder hinter diesem.
Das Prinzip hab ich eigentlich verstanden. Ich ging davon aus, dass ein node-circle im Hintergrund auch nur einen Pfad-circle nutzt und daher visuell das exakte Ergebnis liefern müsste.
Da scheint im Hintergrund aber was anderes abzulaufen.
XeLaTeX, TeX Live, vim-latexsuite

MoonKid
Forum-Meister
Forum-Meister
Beiträge: 690
Registriert: Sa 30. Jun 2012, 11:56

Beitrag von MoonKid »

Das erste Minibeispiel funktioniert mit euren Vorschlägen sehr gut. Übertrage ich das aber in meinen Original-Code der eine Matrix verwendet gehts wieder nicht.
Ist das ok, wenn ich mi dem Thema im Thread bleibe?

Besonderheit an folgendem Minibeisiel ist noch, dass ich die automatische Bennenung der Matrix-nodes beibehalten muss. Eine andere Lösung dafür kenne ich nicht.

Also Probleme in diesem Minibeispiel:
1. ?-Kreis kleiner als +/-
2. Symbole (spalte 2 & 3) sind nicht zentriert im Kreis (im Gegensatz zu Spalte 4).
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{matrix}

\colorlet{rob+}{green}
\colorlet{rob-}{red}
\colorlet{rob?}{yellow}
\newcommand{\robG}[1]{%
    |[fill=rob#1,circle,inner sep=0.1em,minimum size=1.1em]|\(#1\)
}

\begin{document}
\begin{tikzpicture}
    \matrix (M) [matrix of nodes]
    {
        A & \robG{+} & \robG{-} & \robG{?}\\
        B & \robG{-} & \robG{?} & \robG{+}\\
    };
    \node at (M-2-2) {X};
\end{tikzpicture}
\end{document}
XeLaTeX, TeX Live, vim-latexsuite

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

MoonKid hat geschrieben:Haben schon diverse Argumente gegen tex-inline-math gelesen. u.a. http://texblog.net/latex-archive/maths/ ... math-mode/
Was sagt ihr Fachleute dazu?
Wo steht da ein Argument gegen Inline Mathe?
Anekodote:
Wikipedia erklärt das Minus-Zeichen sehr schön. Da ich ja eine moderne Engine verwende, kopiere ich das einfach als Zeichen in den Code.... Tja, leider bietet der default Font scheinbar dieses Zeichen nicht. :D
Nutz doch einfach die wohl einfachste Möglichkeit: $-$
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

DADABBI

Beitrag von DADABBI »

Du hast da wieder einmal ein unerwünschtes Leerzeichen. Zusammen mit der hier sinnvollen Verwendung von Inline-Math, ergibt sich:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{matrix}

\colorlet{rob+}{green}
\colorlet{rob-}{red}
\colorlet{rob?}{yellow}
\newcommand{\robG}[1]{%
    |[fill=rob#1,circle,inner sep=0.1em,minimum size=1.1em]|$#1$%
}

\begin{document}
\begin{tikzpicture}
    \matrix (M) [matrix of nodes]
    {
        A & \robG{+} & \robG{-} & \robG{?}\\
        B & \robG{-} & \robG{?} & \robG{+}\\
    };
    \node at (M-2-2) {X};
\end{tikzpicture}
\end{document}

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Du musst das Zeilenende in Deinem Befehl auskommentieren. Außerdem sind die Nodes wieder zu klein und sie werden in einer Matrix am base Anker ausgerichtet.

Hier ist mal eine Möglichkeit:
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{matrix}

\colorlet{rob+}{green}
\colorlet{rob-}{red}
\colorlet{rob?}{yellow}
\newcommand{\robG}[1]{%
    |[fill=rob#1,circle,minimum size=\ht\strutbox+\dp\strutbox+.2em]|$#1$%
}

\begin{document}
\begin{tikzpicture}
    \matrix (M) [
      matrix of nodes,
      nodes={inner sep=.1em,anchor=center},
      column sep=.2em,
      row sep=.2em
    ]
    {
        A & \robG{+} & \robG{-} & \robG{?}\\
        B & \robG{-} & \robG{?} & \robG{+}\\
    };
    \node at (M-2-2) {X};
\end{tikzpicture}
\end{document}

Antworten