使由节点连接的多条线显示为一条连续的线?

使由节点连接的多条线显示为一条连续的线?

我从未使用过 TikZ,当然也没有用它来绘制图表。根据您使用 TikZ 的经验,您是否认为我不应该尝试用它绘制下面的图表?

查看由箭头线、虚线和以黑点结尾的线组成的线组合(例如,A1 和 Q1 之间有一条黑点)。我假设我可以通过绘制 3 条不同的线来绘制这样的线,但我能否让它们保持对齐,以便它们看起来像一条笔直且连续的路径?或者会有可见的接头?

我更喜欢简单,所以以某种方式将线条组合在一起可能是最简单的方法,但这可能吗?

答案1

如果您要制作许多这样的复杂箭头(正如您似乎正在做的那样),您还可以使用路径替换来自动化您的箭头样式:

\documentclass[tikz, border=5pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc, arrows, decorations.pathreplacing}
\tikzset{
  myarrow/.style={
    decoration={show path construction, lineto code={
      \path (\tikzinputsegmentfirst) to coordinate[pos=.2] (mid1) coordinate[pos=.75] (mid2) (\tikzinputsegmentlast);
      \draw[-stealth] (\tikzinputsegmentfirst) to (mid1);
      \draw[dashed, shorten <=3pt] (mid1) to (mid2);
      \draw[-*, shorten >=2pt] (mid2) to (\tikzinputsegmentlast);
      }},
    decorate
    },
  label1/.style={pos=.2, font=\footnotesize},
  label2/.style={pos=.9, font=\tiny}
  }

\begin{document}
\begin{tikzpicture}
\node (C) at (0,0)  [draw=red, circle, fill=gray!50]{C} ;
\node (X) at (1,4)  [draw=black, circle]{X} ;
\node (Y) at (25:4)  [draw=black, circle]{Y} ;
\draw[myarrow] (C) to node[label1, right] {0,7} node[label2, right] {0,65} (X);
\draw[myarrow] (C) to node[label1, below] {0,4} node[label2, below] {0,35} (Y);
\end{tikzpicture}
\end{document}

时髦的箭头

答案2

下面有一个 2 厘米的箭头,一条一厘米的线以圆圈结束,位于两个节点之间的直线上,其余部分用点画出。

在此处输入图片描述

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\usepgflibrary{arrows.meta}

\begin{document}
\begin{tikzpicture}
\node (C) at (0,0)  [draw=red,circle, fill=gray!50, align=center, text width=30pt,line width=2pt,outer sep = 2pt]{C} ;
\node (X) at (3,7)  [draw=black,circle,  align=center, text width=20pt,line width=2pt,outer sep = 2pt]{X} ;
\draw [->] (C) --  ($(C)!2cm!(X)$);
\draw [dotted] ($(C)!2.1cm!(X)$) -- ($(X)!2.1cm!(C)$);
\draw [-{Circle}] ($(X)!2cm!(C)$) --  (X);
\end{tikzpicture}
\end{document}

相关内容