使用 tkz-berge 进行装饰

使用 tkz-berge 进行装饰

在我继续随意画圆圈和线条的探索,我对 tkz-berge 做了以下使用:

\documentclass[11pt]{standalone}
\usepackage{tkz-berge}
\usetikzlibrary{shapes,snakes,mindmap}
\definecolor{lightblue}{RGB}{160,180,200}
\definecolor{darkblue}{RGB}{110,130,150}
\begin{document}

\begin{tikzpicture}[concept, outer sep=0pt, color=lightblue, every node/.style={circle,fill={lightblue}},
                    every path/.style={circle connection bar, fill=darkblue}]
  \SetVertexNoLabel
  \begin{scope}[xshift=12cm]
    \grEmptyCycle[RA=2/sin(60)]{5}
  \end{scope}
  \AssignVertexLabel{a}{A,B,C,D,E}
  \Edges(a0,a2)
  \Edges(a3,a1)
  \Edges(a4,a0,a3)
\end{tikzpicture}
\end{document}

目标是复制 Till Tantau 在 2012 年演讲中所见的风格,而不引入 LuaTeX:

till 的例子

不幸的是,上面的代码生成如下内容:

当前结果

如果\AssignVertexLabel注释掉,circle connection bar边缘位置正确,但指定的节点格式未完全应用。没有参数path/.style={color=}fill=正确地阴影边缘;我似乎可以选择黑色或什么都没有。

有没有办法获得这种风格的控制,同时保持 tkz-berge 的相对容易?

答案1

解决方法是every node style像这样定义(其中内部 sep=xx 会影响填充区域,而线宽会调整所需的线条粗细)

every node/.style= {circle,fill={lightblue},draw=black,line width=1pt,inner sep=2.7pt}

在此处输入图片描述

代码

\documentclass[border=10pt,11pt]{standalone}
\usepackage{tkz-berge}
\usetikzlibrary{shapes,snakes,mindmap}
\definecolor{lightblue}{RGB}{160,180,200}
\definecolor{darkblue}{RGB}{110,130,150}
\begin{document}

\begin{tikzpicture}[concept, outer sep=0pt, color=lightblue, 
every node/.style= {circle,fill={lightblue},draw=black, line width=1pt,inner sep=2.7pt},
every path/.style={circle connection bar, fill=darkblue}]
  \SetVertexNoLabel
  \begin{scope}[xshift=12cm]
    \grEmptyCycle[RA=2/sin(60)]{5}
  \end{scope}
  \AssignVertexLabel{a}{A,B,C,D,E}
  \Edges(a0,a2)
  \Edges(a3,a1)
  \Edges(a4,a0,a3)
\end{tikzpicture}
\end{document}

相关内容