在 TikZ 3.0 图表中使用阴影

在 TikZ 3.0 图表中使用阴影

我在使用 TikZ 3.0 中带有阴影的新图形绘制功能时遇到了问题。

\documentclass{scrartcl}

\usepackage{tikz}
\usetikzlibrary{shadows,graphs,graphdrawing}
\usegdlibrary{force}
\tikzstyle{vertex}=[draw, circle, fill=white, circular drop shadow]
\tikzstyle{edge}=[draw,thick]

\begin{document}
\tikz
  \graph[spring layout, horizontal=a to b] {
    a[vertex] --[edge] b[vertex];
  };
\tikz
  \graph {
    a[vertex] --[edge] b[vertex];
  };
\end{document}

使用时spring layout(我假设所有布局算法都会出现此问题),边缘位于阴影后面。如果没有布局算法,边缘将位于顶点阴影上方。

如何解决这个问题,以便边缘始终位于阴影之上?

输出

答案1

您可以使用该nodes behind edges选项(第 395 页,pgfmanual v3.0.0)。

在此处输入图片描述

\documentclass[margin=1mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{shadows,graphs,graphdrawing}
\usegdlibrary{force}
\tikzstyle{vertex}=[draw, circle, fill=white, circular drop shadow]
\tikzstyle{edge}=[draw,thick]
\begin{document}

\tikz \graph[nodes behind edges,spring layout, horizontal=a to b]
  { a[vertex] --[edge] b[vertex];};

\tikz \graph { a[vertex] --[edge] b[vertex]; };
\end{document}

相关内容