TikZ/Graph 是否可以考虑边缘标签长度进行自动放置?

TikZ/Graph 是否可以考虑边缘标签长度进行自动放置?

我希望自动绘制一个图形,并在边缘处添加不同长度的标签。为了使它美观,我需要:

  • 如果节点自动放置以下另外,边标签长度不应该影响节点之间的距离;
  • 如果自动放置向右另一个,那么节点之间应该保持距离,以便标签可以位于边缘上。

例子: 这里的左侧是由 制作的\graph,右侧是手动放置的,我想避免这种情况。

演示

问题: 如何自动实现这一点\graph

梅威瑟:

\documentclass{standalone}

\usepackage{tikz}
\usetikzlibrary{graphs,quotes}

\begin{document}

\tikz \graph [edge quotes={auto}] {
  1 ->["hello world"] {2, 3};
};

\begin{tikzpicture}
  \node (1) {1};
  \node (2) at (2.5cm, 0) {2};
  \node (3) at (1cm, -1cm) {3};

  \draw (1) -> node[above] {hello world} (2)
        (1) -> node[fill=white, fill opacity=.5,text opacity=1] {hello world} (3);
\end{tikzpicture}
\end{document}

相关内容