如附图所示,我希望在左节点和右节点之间画一条红色弧,并将其标记为 ABC(如附图所示)。
我该怎么做?到目前为止我编写的代码如下:
\begin{tikzpicture}
\begin{scope}[minimum width=15mm,minimum height=10mm]
\node[draw,line width=0.25mm,rounded corners, label=
{[align=center]above:ABCD\\ abcdefgh 123 \\mnopqr}] (v1) at (0,0) {$G_F(s)$};
\node[draw,line width=0.25mm,rounded corners, label=
{[align=center]above:mnomno \\ xyzxyzxyz}] (v2) at ($(v1)+(10,0)$) {$R(s)$};
\node[draw,line width=0.25mm,rounded corners, label={[align=center]below: \\ abcdef integer\\abcedef}] (v3) at ($(v1)+(5,-4)$) {$G_{I}(s)$};
\end{scope}
\draw[->] (v1) -- (v2) node[pos=0.5,sloped,above]{ABCDEF
approach}node[pos=0.5,sloped,below]{\textcolor{red}{\textbf{Proposed
approach}}};
\draw[->] (v1) -- (v3) node[pos=0.5,sloped,above]{Approach 1}; ;
\draw[->] (v3) -- (v2)node[pos=0.5,sloped,above]{Approach 2};
\end{tikzpicture}
答案1
您可以指定一种/tikz/to path
样式并执行类似\draw (v1) to[my style] (v2)
或更简单的解决方案:
\documentclass[border = 5pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\begin{scope}[minimum width=15mm,minimum height=10mm]
\node[draw,line width=0.25mm,rounded corners, label=
{[align=center]above:ABCD\\ abcdefgh 123 \\mnopqr}] (v1) at (0,0) {$G_F(s)$};
\node[draw,line width=0.25mm,rounded corners, label=
{[align=center]above:mnomno \\ xyzxyzxyz}] (v2) at ($(v1)+(10,0)$) {$R(s)$};
\node[draw,line width=0.25mm,rounded corners, label={[align=center]below: \\ abcdef integer\\abcedef}] (v3) at ($(v1)+(5,-4)$) {$G_{I}(s)$};
\end{scope}
\draw[->] (v1) -- (v2) node[pos=0.5,sloped,above]{ABCDEF
approach}node[pos=0.5,sloped,below]{\textcolor{red}{\textbf{Proposed
approach}}};
\draw[->] (v1) -- (v3) node[pos=0.5,sloped,above]{Approach 1}; ;
\draw[->] (v3) -- (v2)node[pos=0.5,sloped,above]{Approach 2};
%% new line
\draw[red] (v1) .. controls ($(v1)+(1,-8)$) and ($(v2)+(-1,-8)$) .. (v2) node[midway, below]{PCB};
\end{tikzpicture}
\end{document}