
Я пытаюсь создать одномерную схему отсеков с кругами, но изменение стиля tikzstyle на круг не меняет ее с квадрата на круг.
\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}
решение1
Вы рисуете круг с помощью \node [int] (a) {};
(здесь круг не определен), но пишете текст M с помощью \node [makecircle] (c) [] {$M$};
(здесь нет draw
) (Вы написали makecircle
вместо make circle
.)
Поскольку make circle
нужно было добавить только circle
, я удалил tikzstyle и повторно использовал int
стиль.
\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}