Сместить метку под стрелкой в ​​\path

Сместить метку под стрелкой в ​​\path

Я просто хочу переместить метку $v_m\pahse{j-45}$ под стрелку. Есть идеи, как это сделать?

\documentclass[12pt, margin=3mm]{standalone}
\usepackage{tikz}
 \usepackage{steinmetz}   
\usetikzlibrary{angles, arrows.meta,    % new
                quotes}                 % new
\definecolor{lava}{rgb}{0.81, 0.06, 0.13}
\definecolor{myblue}{rgb}{0.0, 0.30, 0.60}
%\usepackage{gensymb} % better is to use siunitx

\begin{document}
    \begin{tikzpicture}[
ang/.style = {draw, Straight Barb-Straight Barb, anchor=west,
              angle radius = 8mm, angle eccentricity=1},
arr/.style = {cap=round,-Straight Barb},
dot/.style = {circle, fill, minimum size=3pt,inner sep=0pt},
every edge quotes/.style = {auto, font=\footnotesize, sloped},
every label/.style       = {inner sep=1pt},
                        ]
% axis
\draw[arr]  (-2.7,0)--(3.6,0)   node[below] {$\Re$}; % x axis
\draw[arr]  (0,-2.7)--(0,3.6) node[left]  {$\Im$}; % y axis
% circle
\draw       (0,0) circle (3.25cm);
% defining radius points
\node (n1) [dot,] at (-45:3.25) {};
\node (n2) [dot,]   at (45:3.25) {};
\node (n3) [dot,] at ( 0:3.25) {};
% vector
\coordinate (O) at (0,0);
\path[draw=black, ultra thick, arr] 
    (O) to ["$\,\,\quad \quad V_m\mathrm{e}^{j(45^{\circ})}$"]  (n2.center);
\path[draw=lava, ultra thick, arr] 
    (O) to ["$\,\,\quad \quad V_m\mathrm{e}^{j(-45^{\circ})}$"]  (n1.center);
    \path[draw=myblue, ultra thick, arr] 
    (O) to ["$\,\,\,\,\,\,\,\,\,\,\,\,\,\,\quad V_m\mathrm{e}^{j(0^{\circ})}$"]  (n3.center);
    
    
% angle
\pic [ang, "$45^{\circ}$"] {angle = n3--O--n2};
\pic [ang, "$-45^{\circ}$"] {angle = n1--O--n3};
    \end{tikzpicture}
\end{document}  

решение1

Вы используетеТиКЗ quotesбиблиотека. Глядя на страницу 254ТиКЗруководство мы видим:

После загрузки внутри параметров команды узла вы также можете указать строки следующего вида: "⟨текст⟩"⟨опции⟩

Итак, все, что вам нужно сделать, это добавить слово "ниже" к спецификации узла. Это дает:

введите описание изображения здесь

Я также взял на себя смелость заменить \,\,\,\,\,\,\,\,\,\,\,\,\,\,\quadв MWE на above right. Вот обновленный код:

\documentclass[12pt, margin=3mm]{standalone}
\usepackage{tikz}
 \usepackage{steinmetz}
\usetikzlibrary{angles, arrows.meta,    % new
                quotes}                 % new
\definecolor{lava}{rgb}{0.81, 0.06, 0.13}
\definecolor{myblue}{rgb}{0.0, 0.30, 0.60}

\begin{document}
    \begin{tikzpicture}[
ang/.style = {draw, Straight Barb-Straight Barb, anchor=west,
              angle radius = 8mm, angle eccentricity=1},
arr/.style = {cap=round,-Straight Barb},
dot/.style = {circle, fill, minimum size=3pt,inner sep=0pt},
every edge quotes/.style = {auto, font=\footnotesize, sloped},
every label/.style       = {inner sep=1pt},
                        ]
% axis
\draw[arr]  (-2.7,0)--(3.6,0)   node[below] {$\Re$}; % x axis
\draw[arr]  (0,-2.7)--(0,3.6) node[left]  {$\Im$}; % y axis
% circle
\draw       (0,0) circle (3.25cm);
% defining radius points
\node (n1) [dot,] at (-45:3.25) {};
\node (n2) [dot,]   at (45:3.25) {};
\node (n3) [dot,] at ( 0:3.25) {};
% vector
\coordinate (O) at (0,0);
\path[draw=black, ultra thick, arr]
    (O) to ["$\,\,\quad \quad V_m\mathrm{e}^{j(45^{\circ})}$"]  (n2.center);
\path[draw=lava, ultra thick, arr]
    (O) to ["$\,\,\quad \quad V_m\mathrm{e}^{j(-45^{\circ})}$" below]  (n1.center);
\path[draw=myblue, ultra thick, arr]
    (O) to ["$V_m\mathrm{e}^{j(0^{\circ})}$" above right]  (n3.center);

% angle
\pic [ang, "$45^{\circ}$"] {angle = n3--O--n2};
\pic [ang, "$-45^{\circ}$"] {angle = n1--O--n3};
    \end{tikzpicture}
\end{document}

решение2

Заменить существующий путь на

\path[draw=lava, ultra thick, arr] 
    (O) to node [below,sloped]{$V_m\mathrm{e}^{j(-45^{\circ})}$}  (n1.center);

введите описание изображения здесь

решение3

Еще одно решение, использующее quoteсинтаксис для позиционирования меток на нужной стороне пути (в вашем случае вектора) и siunitxдля записи значений углов:

\documentclass[12pt, margin=3mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{angles, arrows.meta,   
                quotes}                
\definecolor{lava}{rgb}{0.81, 0.06, 0.13}
\definecolor{myblue}{rgb}{0.0, 0.30, 0.60}
\usepackage{steinmetz}
\usepackage{siunitx}     % new

\begin{document}
    \begin{tikzpicture}[
ang/.style = {draw, Straight Barb-Straight Barb, anchor=west,
              angle radius = 8mm, angle eccentricity=1,
              font=\footnotesize},  % <--- added
arr/.style = {cap=round,-Straight Barb},
dot/.style = {circle, fill, minimum size=3pt,inner sep=0pt},
every edge quotes/.style = {auto, font=\footnotesize, sloped},
every label/.style       = {inner sep=1pt},
                        ]
% axis
\draw[arr]  (-3.4,0)--(3.6,0) node[below] {$\Re$}; % changed
\draw[arr]  (0,-3.4)--(0,3.6) node[left]  {$\Im$}; % changed
% circle
\draw       (0,0) circle (3.25cm);
% defining radius points
\node (n1) [dot,] at (-45:3.25) {};
\node (n2) [dot,] at ( 45:3.25) {};
\node (n3) [dot,] at (  0:3.25) {};
% vector
\coordinate (O) at (0,0);
\path[draw=black, ultra thick, arr]
    (O) to ["$V_m\mathrm{e}^{j(\SI{45}{\degree})}$"]  (n2.center);
\path[draw=lava, ultra thick, arr]
    (O) to ["$V_m\mathrm{e}^{j(\SI{-45}{\degree})}$" ']  (n1.center); % <--- observe added '
    \path[draw=myblue, ultra thick, arr]
    (O) to [pos=0.7,"$ V_m\mathrm{e}^{j(\SI{0}{\degree})}$" ]  (n3.center);

% angle
\pic [ang, "\SI{45}{\degree}"] {angle = n3--O--n2};
\pic [ang, "\SI{-45}{\degree}"] {angle = n1--O--n3};
    \end{tikzpicture}
\end{document}

введите описание изображения здесь

Редактировать: По сравнению с вашим MWE в вышеуказанный MWE внесены следующие изменения:

  • для позиционирования метки используется сокращение 'для опции swap, которая сдвигает метку на противоположную сторону вектора:
(O) to ["$V_m\mathrm{e}^{j(\SI{-45}{\degree})}$" swap]

или немного короче

(O) to ["$V_m\mathrm{e}^{j(\SI{-45}{\degree})}$" ']
  • оси удлинены и могут пересекать окружность
  • для позиционирования метки используется опция pos=..., которая может перемещать положение метки из середины пути в нужную точку на пути
  • для лучшей читаемости угловые метки уменьшены до\footnotesize

Связанный контент