
Вот простой полный пример:
\documentclass{article}
\usepackage{graphicx}
\usepackage{pgfplots, tikz}
\usetikzlibrary{positioning}
\begin{document}
\section{}
\begin{figure}
\newcommand\radius{2}
\newcommand\spacing{2}
\centering
\begin{tikzpicture}
\draw (-\radius-\spacing/2, 0) circle (\radius);
\draw (\radius+\spacing/2, 0) circle (\radius) node[anchor = north west]{Test};
\end{tikzpicture}
\caption{Caption}
\end{figure}
Выходной сигнал:
Но я хочу, чтобы текст «Тест» находился на северо-западе круга.граница. Кажется, я стою на якоре на северо-западе круга.центрВместо этого. Как это исправить?
решение1
При \draw (<x>,<y>) circle[radius=<r>] node[anchor=north west] {Test};
, узел размещается в точке (<x>,<y>)
. Решением является размещение узла отдельно в точке ({3+2*cos(135)},{2*sin(135)})
.
Согласно pgfmanual, синтаксис \draw (3,0) circle (2);
старый. Более новый синтаксис — \draw (3,0) circle[radius=2];
.
\documentclass[border=6pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (-3,0) circle[radius=2];
\draw (3,0) circle[radius=2];
\fill ({3+2*cos(135)},{2*sin(135)}) circle[radius=2pt];
\node[anchor=north west] at ({3+2*cos(135)},{2*sin(135)}) {Test};
\end{tikzpicture}
\end{document}
решение2
Не уверен, что это то, что вам нужно, но вы можете добавить a label
к узлу под любым углом:
Вы можете настроить расстояние между метками, используя положительные или отрицательные значения длины:
label={[label distance=2mm]135:Test}
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[draw, circle, minimum size=4cm, label=135:Test]{};
\end{tikzpicture}
\end{document}