Позиционирование узлов в цепочке комплексов с TikZ

Позиционирование узлов в цепочке комплексов с TikZ

Я хочу получить цепной комплекс, как показано ниже:

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

Чтобы получить это, я использовал этот код:

\begin{center}
\begin{tikzpicture}[start chain] {
    \node[on chain] {$\underset{v \in \Delta_0 ^0} \bigoplus I(v)$} ;
    \node[on chain] {$0$}; }
\end{tikzpicture}
\end{center}

но расположение прямой суммы в результате неверно.

Как мне правильно установить положение прямой суммы как на изображении? Спасибо.

решение1

Как говорит Зарко, непонятно, зачем вам это нужно.тикзчтобы сделать это, и вместо этого вы можете использовать

 \[\bigoplus_{v \in \Delta_0 ^0} I(v) \longrightarrow 0\]

Если вы действительно хотите использоватьтикзто я бы рекомендовал matrix of math nodes.

Следующееминимальный рабочий примерпоказано, как сделать это с помощью простого уравнения, используя матрицу математических узлов и библиотеку цепей:

\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{matrix,chains}
\begin{document}

\[\bigoplus_{v \in \Delta_0 ^0} I(v) \longrightarrow 0\]

\begin{center}
  \begin{tikzpicture}[>=stealth]
    \matrix (M)[matrix of math nodes,
        column sep=10mm, nodes={anchor=center}]{
      \displaystyle\bigoplus_{v \in \Delta_0 ^0} I(v)&0\\
     };
     \draw[->](M-1-1)--(M-1-2);
  \end{tikzpicture}
\end{center}

\begin{center}
  \begin{tikzpicture}[start chain, every join/.style=->] {
      \node[on chain] {$\underset{v \in \Delta_0 ^0} \bigoplus I(v)$} ;
      \node[on chain, join] {$0$}; }
  \end{tikzpicture}
\end{center}

\end{document}

Это производит:

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

В nodes={anchor=center}стиле for \matrixгарантирует, что стрелка от (M-1-1)to (M-1-2)горизонтальна, эти узлы являются сокращением, которое tikz предоставляет для записей матрицы в строке 1 и столбцах 1 и 2 соответственно. У меня также есть «скрытые» стрелки.

Обратите внимание, что в примере с цепочками вам необходимо указать, какие узлы следует объединить, добавив join, и что я установил every join/.style=->соединение в виде стрелки, а не ребра.

решение2

Если вы продолжаете использовать tikz(и не учитываете мой комментарий выше), то посмотрите, есть ли следующая модификация первойЭндрюспример с tikzприемлемым:

\documentclass[tikz, preview, margin=3mm]{standalone}
\usetikzlibrary{matrix,chains}

\begin{document}
\begin{tikzpicture}[>=stealth, baseline]% added "baseline"
\matrix (M) [matrix of math nodes,
             column sep=7mm]% removed options for node
{
\displaystyle\bigoplus_{v \in \Delta_0 ^0} I(v)&0\\
};
\draw[->](M-1-1.east |- M-1-2) -- (M-1-2);% changed coordinates for arrow
\end{tikzpicture}
\end{document}

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

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