Tikz: Стандартный подграф с n=5 без всех ребер

Tikz: Стандартный подграф с n=5 без всех ребер

Я знаю, что есть способ использовать «graphs.standard» и «subgraph k_n», чтобы получить пятиузловой граф, выглядящий как полная звезда, как на прикрепленном изображении. введите описание изображения здесь

Но есть ли возможность сказать LaTeX, что мне нужны только определенные его края? Я хочу объяснить списки смежности и матрицы на слайде проекторного устройства и мне нужны только некоторые из них.

Нужно ли мне рисовать весь график самому или я могу указать LaTeX нужные мне ребра?

решение1

Вот макрос \incomplete, который сделает всю работу за вас. Синтаксис:

\incomplete[<radius>]{<num vertices>}{<edge list>}

введите описание изображения здесь

Два приведенных выше примера созданы с помощью \incomplete{5}{1/2,1/3,1/4,1/5,2/4,2/5}и\incomplete{6}{1/2,2/3,3/4,4/5,5/6,6/1,2/4}

<radius>необязательно. По умолчанию 1.5cm. <edgelist>— это список, разделенный запятыми, в котором каждая запись имеет форму vertex1/vertex2. <edgelist>может быть пустой, например, \incomplete{5}{}.

Вот код:

\documentclass{article}

\usepackage{tikz}

\tikzset{vertex/.style={draw, circle, inner sep=1mm}}

\newcommand{\incomplete}[3][1.5cm]{\begin{tikzpicture}
\foreach \n in {1,...,#2}{\node[vertex]at({90-360/#2*(\n-1)}:#1)(\n){\n};}
\foreach \v/\w in {#3}{\draw(\v)--(\w);}
\end{tikzpicture}}

\begin{document}

\incomplete{5}{1/2,1/3,1/4,1/5,2/4,2/5}\hspace{2cm}\incomplete{6}{1/2,2/3,3/4,4/5,5/6,6/1,2/4}

\end{document}

решение2

Указав, что графикпростой, можно изменять ребра макроса графа и даже удалять их с помощью специальной -!-спецификации ребер:

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{graphs.standard}
\begin{document}

\begin{tikzpicture}
  \graph[nodes={circle,draw},simple] {
    subgraph K_n [n=5,clockwise];
    2 -!- 3 -!- 4 -!- 5 -!- 3;
  };
\end{tikzpicture}

\end{document}

K5 с некоторыми удаленными краями

Ссылка на объяснение в документах

Связанный контент