如何使用 tkz-graph 绘制自环和平行边

如何使用 tkz-graph 绘制自环和平行边

如何在 v_3 处绘制自环并在 v_4 和 v_3 之间绘制平行边\usepackage{tkz-graph}(如果 tkz-graph 不是绘制图形的最佳工具,请说明绘制图形的最佳方法)

另外,如何将边命名为 e_1、e_2、...、e_6?

\documentclass[border=10pt]{standalone}
\usepackage{tkz-graph}
\usetikzlibrary{calc} 
\GraphInit[vstyle=normal]
        
\begin{document}
 \begin{tikzpicture}
     \SetGraphUnit{2}
     \begin{scope}[rotate=-135]
            \Vertices{circle}{$v_1$,$v_2$,$v_3$,$v_4$}
     \end{scope}
     \Edges($v_1$,$v_2$,$v_4$,$v_3$,$v_1$)
     \Loop[dist=2cm,dir=EA,style={thick}]($v_3$) 
     \Edge[style={bend left}]($v_1$)($v_2$)
 \end{tikzpicture}
\end{document}

答案1

\Loop ..\Edge 线无法编译……

虽然我不确定你想要实现什么,但这里有一种方法可以做到这一点:

结果

\documentclass[border=10pt]{standalone}
\usepackage{tkz-graph}
\usetikzlibrary{calc} 
\GraphInit[vstyle=normal]
        
\begin{document}

 \begin{tikzpicture}
    % ~~~ internal fonts in circles, see 4.3 \SetVertexMath ~~~
    %     so the vertex' name is v_1, AND it's text is $v_1$
    %     we only need the names here
    \SetVertexMath      
    
    % ~~~ putting the vertices, see 2.1 \Vertex ~~~~
    \Vertex[x=0,y=0]{v_1}
    \Vertex[x=3,y=0]{v_2}
    \Vertex[x=0,y=3]{v_4}
    \Vertex[x=3,y=3]{v_3}
    
    % ~~~ multiple edge-connections, see 5.3 Multiple arêtes \Edges ~~~~~~~
    \Edges(v_4,v_1,v_2,v_4,v_3,v_1)
    
    \Edge[label=hi world](v_3)(v_2)     
    
    % ~~~ some loops, see5.2.1 Exemple avec \Loop ~~~~
    \Loop(v_4)                      % using defaults
    \Loop[dist=1cm, dir=EA](v_3)    % narrow, EAst=right side
    \Loop[dist=17mm, dir=SOWE,label=loop-1,style=left](v_1)
        
 \end{tikzpicture}

\end{document}

PS:让我们再修改一下 v1 循环:

    \Loop[dist=17mm, dir=SOWE,label={loop-1},style={red,dashed,left,<->},labelstyle=teal](v_1)

结果2

相关内容