更改 tkz-graph 中顶点标签的字体大小?

更改 tkz-graph 中顶点标签的字体大小?

我目前正在编写一个 tex 文件,其中我还需要创建一个图形并标记顶点。我正在使用 tkz-graph 包。

\documentclass{article}
\usepackage{tikz}
\usepackage{tkz-graph}


\begin{document}


\begin{tikzpicture}
 \GraphInit[vstyle=Normal]
    \SetUpEdge
    \SetGraphUnit{1.5}
    \tikzset{VertexStyle/.style = {shape = circle,  minimum size = 30pt, draw}}


    \Vertex[L = a,  x = -2, y = 2]{a}
    \Vertex[L = abcdef,  x = 2, y = 2]{abcdef}

    \Edge[lw=1pt](a)(abcdef)
    
\end{tikzpicture}

\end{document}

然后,这两个顶点的大小不同,因为第二个顶点的标签太大,然后它会自动增加顶点的大小。我想更改此顶点标签的字体大小,但我不知道如何操作,而且我在文档中找不到它。那么,如何更改单个顶点标签的字体大小?如果这不可能,我该如何更改所有顶点标签的字体大小?

谢谢

答案1

要为所有顶点设置字体,您可以将 tikz 节点选项添加到Vertexstyle,例如\tikzset{VertexStyle/.style={..., font=\large}}

要为单个顶点设置字体,您可以使用\Vertex[..., style={<tikz node options>}] {...}

注意:当前本地样式 ( style=...) 将被全局样式 ( VertexStyle/.style=...) 覆盖。在下面的示例中,使用\xpatchcmdfrom来更改此设置。regexpatch

tikz 节点字体选项的完整列表记录在pgfmanualv3.1.9a,第 17.4.2 节“文本参数:字体”中。

\documentclass{article}
\usepackage{tikz} % not necessary because `tikz-graph` will auto load tikz
\usepackage{tkz-graph}

\usepackage{regexpatch}
\makeatletter
\xpatchcmd*{\@@vertex}
  {\cmdGR@vertex@style,\nstyle}
  {\nstyle,\cmdGR@vertex@style}
  {}{\fail}
\makeatother

\begin{document}

\begin{tikzpicture}
 \GraphInit[vstyle=Normal]
    \SetUpEdge
    \SetGraphUnit{1.5}
    \tikzset{VertexStyle/.style = {shape = circle,  minimum size = 30pt, draw, text=blue}}

    % vertex a, "node font=\Large, text=red" (global "text=blue" is overwritten by the local)
    \Vertex[L = a,  x = -2, y = 2, style={node font=\Large, text=red}]{a}
    % vertex b, "text=blue, font=\bfseries"
    \Vertex[L = abcdef,  x = 2, y = 2, style={font=\bfseries}]{abcdef}

    \Edge[lw=1pt](a)(abcdef)
    
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容