在下图中,我将两个顶点标记为“3”。现在,每当我尝试在顶点“1”和顶点“3”(右)之间绘制一条边时,边总是绘制在左顶点“3”上。
我想在顶点“1”和右顶点“3”之间画一条边。我该怎么画?我还想增加顶点的标签大小。该怎么做?
\documentclass[legalpaper,landscape]{article}
\usepackage[utf8]{inputenc}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage[paperheight=22cm,paperwidth=22cm,bottom=0.5cm,top=0.5cm,left=0cm,right=0cm]{geometry}
\usepackage[upright]{fourier}
\usepackage{tkz-graph}
\usetikzlibrary{arrows}
\thispagestyle{empty}
\begin{document}
\SetVertexNormal[Shape = circle,
FillColor = Black,
LineWidth = 2pt,
InnerSep = 0pt,
]
\SetUpEdge[lw = 3pt,
color = black,
labelcolor = white,
labelcolor = white,
labeltext = black,
labelstyle = {sloped above,draw,text=black}
]
\begin{center}
\begin{tikzpicture}
\Vertex[x=0,y=0,LabelOut=true,Lpos=90]{3}
\Vertex[x=10,y=0,LabelOut=true,Lpos=90]{4}
\Vertex[x=5,y=5,LabelOut=true,Lpos=90]{1}
\Vertex[x=5,y=-5,LabelOut=true,Lpos=180,LableStyle{lw=8pt}]{2}
\Vertex[x=0,y=-10,LabelOut=true,Lpos=90]{4}
\Vertex[x=10,y=-10,LabelOut=true,Lpos=90]{3}
\Edge(1)(3)
\Edge(3)(4)
\Edge(4)(2)
\Edge(2)(3)
\Edges(1,2,3)
\end{tikzpicture}
\end{center}
\end{document}
在此处输入图片描述
答案1
要使多个顶点具有相同的标签但不同的内部名称,请使用选项L=<text>
分配标签并使用不同的内部名称(3a
在我的示例中);这样,您将拥有两个具有相同标签3
但具有不同内部名称的顶点3
,并3a
允许您将这些不同的名称用于边或任何其他可能性。我对标记为的两个顶点做了同样的事情4
。
要更改标签大小,我必须修补内部\@@vertex
并定义一个\LabelSize
默认为 的命令\normalsize\rmfamily
。重新定义它以满足您的需要(请参阅%Here
我将其更改为 的标记行\LARGE\rmfamily
)。
\documentclass[legalpaper,landscape]{article}
\usepackage[utf8]{inputenc}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage[paperheight=22cm,paperwidth=22cm,bottom=0.5cm,top=0.5cm,left=0cm,right=0cm]{geometry}
\usepackage[upright]{fourier}
\usepackage{tkz-graph}
\usetikzlibrary{arrows}
\usepackage{etoolbox}
\newcommand\LabelFont{\normalsize\rmfamily}
\makeatletter
\patchcmd{\@@vertex}
{\cmdGR@vertex@style}
{font=\LabelFont,\cmdGR@vertex@style}
{}
{}
\makeatother
\thispagestyle{empty}
\begin{document}
\SetVertexNormal[
Shape = circle,
FillColor = Black,
LineWidth = 2pt,
InnerSep = 0pt,
MinSize=1cm,
]
\SetUpEdge[
lw = 3pt,
color = black,
labelcolor = white,
labelcolor = white,
labeltext = black\fontsize{30}{36}\selectfont,
labelstyle = {sloped above,draw}
]
\begin{center}
\renewcommand\LabelFont{\LARGE\rmfamily}% Here
\begin{tikzpicture}
\Vertex[x=0,y=0,LabelOut=true,Lpos=90,L=3]{3a}
\Vertex[x=10,y=0,LabelOut=true,Lpos=90,L=4]{4a}
\Vertex[x=5,y=5,LabelOut=true,Lpos=90]{1}
\Vertex[x=5,y=-5,LabelOut=true,Lpos=180,LableStyle{lw=8pt}]{2}
\Vertex[x=0,y=-10,LabelOut=true,Lpos=90]{4}
\Vertex[x=10,y=-10,LabelOut=true,Lpos=90]{3}
\Edge(1)(3a)
\Edge(3)(4)
\Edge(4)(2)
\Edge(2)(3)
\Edges(1,2,3)
\end{tikzpicture}
\end{center}
\end{document}
结果: