
Я хочу уменьшить пространство между заголовком и кругом в этом коде. Мне также нужны некоторые предложения, чтобы сделать этот код более эффективным
\documentclass{article} \usepackage{tikz} \usetikzlibrary{angles,quotes}
\def\myrad{3cm}% radius of the circle \def\myang{60}% angle for the arc
\begin{document}
\def\myrad{1.5cm}% radius of the circle
\def\myang{45}% angle for the arc
\begin{tikzpicture}
% the origin
\coordinate (O) at (0,0);
% the box for deterministic part
\draw [fill=blue!05!white,dashed] (-4,-4) rectangle (4,4);
\draw [draw=none,node font=\LARGE] (-4,3) rectangle (4,4) node[midway]
{Deterministic};
% the circle and the dot at the origin
\draw (O) node[circle,inner sep=1.5pt,fill] {};
\draw [black!25,thick] circle [radius=\myrad];
% the ``\theta'' arc
\draw (\myrad,0) coordinate (xcoord) --
node[midway,below] {$r=1$} (O) --
(\myang:\myrad) coordinate (slcoord)
pic [draw,thick,->,>=stealth,angle radius=1cm,"$\theta$"] {angle = xcoord--O--slcoord};
% the outer ``s'' arc
\draw (\myrad,0) arc[start angle=0,end angle=\myang,radius=\myrad] {};
\node[draw=none,text width=4cm, font=\Large,align=center] at (0.25,-3){$0\leq \boldsymbol{\theta} \leq \pi/4$\vspace{2mm}$x=\cos(\theta_i)$\\$y=\sin(\theta_i)$};
\end{document}
решение1
В вашем MWE есть некоторые ошибки:
- отсутствует пакет
amsmat
илиmathtools
- отсутствующий
\end{tikzpicture}
Добавив tikz
библиотеки backgrounds
, fit
, positioning
и scopes
я переписал ваш MWE следующим образом:
\documentclass{article}
\usepackage{mathtools}
\usepackage{tikz}
\usetikzlibrary{angles, backgrounds, fit, quotes, positioning, scopes}
\begin{document}
\begin{center}
\begin{tikzpicture}[
node distance = 5mm,
my angle/.style = {draw, thick, -stealth,
angle radius=1cm,"$\theta$"}
]
\def\myrad{1.5cm}% radius of the circle
\def\myang{45}% angle for the arc
% the origin
\node (C) [circle,draw=red, minimum size=2*\myrad] {};
\node [circle, inner sep=1pt, fill] {};
% angle
\draw[thick]
(C.center) -- node[below] {$r=1$} (0:\myrad) coordinate (A)
arc (0:45:1.5) coordinate (B)
-- cycle;
\draw pic [my angle] {angle = A--C--B};
% box for deterministic part
\node (D) [above=of C, font=\Large] {Deterministic};
% math
\node (E) [below=of C, font=\Large] {%
$\begin{aligned}
0 & \boldsymbol{\theta} \leq \pi/4 \\
x & = \cos(\theta_i) \\
y & =\sin(\theta_i)
\end{aligned}$};
% background rectangle
\scoped[on background layer]
\node [draw, dashed, fill=gray!20, inner xsep=11mm,
fit=(C) (D) (E)] {};
\end{tikzpicture}
\end{center}
\end{document}
Все позиции элементов изображения теперь относительны, поэтому у вас есть центральный контроль над расстояниями между узлами (по node distance
) и размером элементов изображения. Приведенный выше код, вероятно, немного короче, чем в вашем MWE.
Мне не понятно, почему у вас в уравнении \theta
жирный шрифт, а на изображении нет. По-моему, вам следует убрать boldsymbol
в уравнении. Уравнение теперь в окружении amsmath
( ) . Мне больше нравится центрирование, чем удаление амперсандов в уравнении и замена их на .mathtools
aligned
aligned
gathered
Как видите, осью изображения является круг.C
. Относительно него рисуются окружность "чоп" и угол, над ней - название изображения, под ней - уравнение. Фоновый прямоугольник - это действительнофони вытягивается последним.
Приложение: Добавил цвет в область круга и угла. Надеюсь, я правильно вас понял :)
\documentclass{article}
\usepackage{mathtools}
\usepackage{tikz}
\usetikzlibrary{angles, backgrounds, fit, quotes, positioning, scopes}
\begin{document}
\begin{center}
\begin{tikzpicture}[
node distance = 5mm,
my angle/.style = {draw, thick, -stealth,
angle radius=1cm,"$\theta$"}
]
\def\myrad{1.5cm}% radius of the circle
\def\myang{45}% angle for the arc
% the origin
\node (C) [circle, draw=red, fill=red!10, minimum size=2*\myrad] {};% added fill, color is red!10. you can change color according to your taste/wish
\node [circle, inner sep=1pt, fill] {};
% angle
\draw[thick, fill=white] % added fill, color is white. you can change color according to your taste/wish
(C.center) -- node[below] {$r=1$} (0:\myrad) coordinate (A)
arc (0:45:1.5) coordinate (B)
-- cycle;
\draw pic [my angle] {angle = A--C--B};
% box for deterministic part
\node (D) [above=of C, font=\Large] {Deterministic};
% math
\node (E) [below=of C, font=\Large] {%
$\begin{aligned}
0 & \leq \boldsymbol{\theta} \leq \pi/4 \\
x & = \cos(\theta_i) \\
y & = \sin(\theta_i)
\end{aligned}$};
% background rectangle
\scoped[on background layer]
\node [draw, dashed, fill=blue!10, inner xsep=11mm,
fit=(C) (D) (E)] {};
\end{tikzpicture}
\end{center}
\end{document}