tkz-graph:更改单个顶点类型

tkz-graph:更改单个顶点类型

我对大多数顶点使用以下设置:

\GraphInit[vstyle=Classic]
\tikzset{VertexStyle/.append style = {minimum size = 5pt, inner sep = 0pt}}

但我希望图形中的一个或两个顶点是空心的,外边缘较厚。我很困惑哪些选项可以用在 中\Vertex,哪些可以放在 中\SetUpVertex,哪些必须使用\tikzset等。这里最好的选择是什么?

答案1

抱歉,我需要翻译 tkz-graph 的文档。首先,这个包的主要思想是向用户提供有用且简单的宏和样式。最后,您需要了解两种样式:VertexStyleEdgeStyle。当您想要绘制图形时,您可以选择“通用”样式\GraphInit[vstyle=Classic]。如果您的所有图形都具有相同的呈现方式,并且如果图形内部的所有顶点都具有相同的样式,则这很有用。但您可以手动全局更改样式,也可以本地更改样式。

存在一些不一致之处,但我需要将 tkz-graph 适配到 pgf 2.1 和 pgfkeys。使用新​​版本,我将仅使用 pgfkeys,并添加英文文档。

\documentclass[]{article}
\usepackage{tkz-graph}
\begin{document}

\begin{tikzpicture} 
% the next line  is because you want the style classic for most of the vertices
% if you can't find a style in the predefined styles then you create a style with
% \tikzset{VertexStyle/.style= ....
% if a predefined style is not exactly what you want you can use after the next line
% %\tikzset{VertexStyle/.append style = .....
% You also use : \SetUpVertex  \SetUpVertex[FillColor=red] 
%  \SetUpVertex is to avoid the use of \tikzset{VertexStyle/.append style ....   
\GraphInit[vstyle=Classic]
\SetUpVertex[FillColor=blue!30]  
\Vertex{A}
% with a scope you apply locally a new style but you can  use a tex group {....} instead.
\begin{scope}[VertexStyle/.append style = {minimum size = 5pt, 
                                           inner sep = 0pt,
                                           color=green}]
 \Vertex[x=4,y=2]{B}   
\end{scope}
% here I use  \tikzset
\tikzset{VertexStyle/.append style={rectangle}}
% Now if I want to put the label inside the vertex, I need to pass the style in the  
% options of Vertex with ,LabelOut=false.
% Logically, it's possible with \SetUpVertex but ...
\Vertex[x=4,y=-2,LabelOut=false]{C}  
\end{tikzpicture}    
\end{document}  

结论

如果您总是想要相同类型的图表,tkz-graph 很有用。如果图表不是“同质的”,则存在一些困难。

在此处输入图片描述

答案2

您可以使用类似如下的方法:

\begin{tikzpicture}
\SetVertexNormal[LineWidth=3pt]
\Vertex{B}
\SetVertexNoLabel
\Vertex[x=1,y=0]{C}
\end{tikzpicture}  

顶点

相关内容