
Ich versuche, ein 1D-Kompartimentdiagramm mit Kreisen zu erstellen, aber das Ändern des Tikz-Stils mit Kreis ändert es nicht von einem Quadrat in einen Kreis.
\documentclass[12pt]{report}
\usepackage{caption}
\usepackage{tikz}
\usetikzlibrary{arrows}
\begin{document}
\tikzstyle{int}=[draw, line width = 0.5mm, minimum size=5em]
\tikzstyle{make circle}=[circle, line width = 0.5 mm, minimum size=5em]
\begin{figure}
\centering
\begin{tikzpicture}[node distance=3cm,auto,>=latex']
\node [int] (a) {};
%%%%%%%%%%%%%
\node [makecircle] (c) [] {$M$}; %% This is the problem (still makes a square)
%%%%%%%%%%%
\node [int] (d) [right of=c, node distance=4cm] {$E$};
\draw[->, ultra thick, blue] (c) edge node {$r(1-p)$} (d);
\draw [green, ultra thick, ->]
([xshift=-0.25cm]a.north) to[out=120, in=60, distance=1.5cm] ([xshift=0.25cm]a.north);
\node [above=1.0cm,text=green] at (a.north) {$pr$};
\draw [red, ultra thick, ->] (0,-1) -- (0,-2);
\node [right=0.5cm,below=0.15cm,text=red] at (a.south) {$\approx 0$};
\end{tikzpicture}
\caption{This is a two compartment model}
\end{figure}
\end{document}
Antwort1
Du zeichnest den Kreis mit \node [int] (a) {};
(hier ist kein Kreis definiert), schreibst den Text M aber mit \node [makecircle] (c) [] {$M$};
(hier steht kein draw
) (Du hast makecircle
statt geschrieben make circle
.)
Da make circle
nur das hinzugefügt würde circle
, habe ich den Tikzstyle entfernt und den int
Style erneut verwendet.
\documentclass[12pt]{report}
\usepackage{caption}
\usepackage{tikz}
\usetikzlibrary{arrows}
\begin{document}
\tikzstyle{int}=[draw, line width = 0.5mm, minimum size=5em]
\begin{figure}
\centering
\begin{tikzpicture}[node distance=3cm,auto,>=latex']
\node[int, circle] (c) [] {$M$};
\node [int] (d) [right of=c, node distance=4cm] {$E$};
\draw[->, ultra thick, blue] (c) edge node {$r(1-p)$} (d);
\draw [green, ultra thick, ->]
([xshift=-0.25cm]c.north) to[out=120, in=60, distance=1.5cm] ([xshift=0.25cm]c.north);
\node [above=1.0cm,text=green] at (c.north) {$pr$};
\draw [red, ultra thick, ->] (0,-1) -- (0,-2);
\node [right=0.5cm,below=0.15cm,text=red] at (c.south) {$\approx 0$};
\end{tikzpicture}
\caption{This is a two compartment model}
\end{figure}
\end{document}