Я пытаюсь сделать диаграмму импликаций в форме буквы Y. Однако вместо символов в каждой импликации у меня текст, который занимает некоторое место. Это делает мою диаграмму чрезвычайно широкой, и она не помещается на странице. Для справки, вот что у меня есть (включая некоторые исправления, чтобы это работало с Beamer):
\documentclass{beamer}
\usepackage{tikz-cd}
\begin{document}
\begin{frame}
\[
\begin{tikzcd}[ampersand replacement=\&, column sep=small]
XXXXXXXXXXXXXXXXXXXXXXXXXX \ar[dr, Rightarrow] \& \& YYYYYYYYYYYYYYYYYYYYYYYYYY \ar[dl, Rightarrow]\\
\& WWWWWWWWWWWWWWWWWWWW\ar[d,Rightarrow] \\ \& ZZZZZZZZZZ \&
\end{tikzcd}
\]
\end{frame}
\end{document}
решение1
Как указано в разделе 3.3 руководства tikz-cd, вы можете рисовать некоторые диаграммы непосредственно в TiкZ, что может быть самым простым вариантом в данном случае.
\documentclass{beamer}
\usepackage{tikz-cd}
\usetikzlibrary{positioning}
\begin{document}
\begin{frame}
\begin{tikzpicture}[commutative diagrams/every diagram]
\node(X){XXXXXXXXXXXXXXXXXXXXXXXXXX};
\node[right=0.1cm of X](dummy){};
\node[right=0.1cm of dummy](Y){YYYYYYYYYYYYYYYYYYYYYYYYYY};
\node[below=of dummy](W){WWWWWWWWWWWWWWWWWWWW};
\node[below=of W](Z){ZZZZZZZZZZ};
\path[commutative diagrams/.cd, every arrow, every label]
(X) edge[commutative diagrams/Rightarrow] (W)
(Y) edge[commutative diagrams/Rightarrow] (W)
(W) edge[commutative diagrams/Rightarrow] (Z);
\end{tikzpicture}
\end{frame}
\end{document}
Как видите, это имеет форму буквы Y. Часть YYYYYYYYYYYYYYYYYYYYYYYYYY
обрезается, что можно исправить, переместив диаграмму влево методом грубой силы (\hspace*{-...}), используя меньший шрифт (например, добавьте font=\small
после commutative diagrams/every diagram
, или, что я бы рекомендовал, сократите содержание XXXXXXXXXXXXXXXXXXXXXXXXXX
и , YYYYYYYYYYYYYYYYYYYYYYYYYY
потому что это больше всего понравится аудитории.
решение2
Чистый код tikz-cd с помощью mathtools
(для команды its\mathclap`)
\documentclass{beamer}
\usepackage{tikz-cd}
\usepackage{mathtools}
\begin{document}
\begin{frame}
\[
\begin{tikzcd}[ampersand replacement=\&, column sep=-0.25em]
XXXXXXXXXXXXXXXXXXX\ar[dr, Rightarrow, end anchor={[yshift=1.5ex, xshift=-1em]}] \& \& YYYYYYYYYYYYYYYYYYY \ar[dl, Rightarrow, end anchor={[yshift=1.5ex, xshift=1em]}]\\
\& \mathclap{ WWWWWWWWWWWWWWWWWWWW}\ar[d, Rightarrow] \\ \& \mathclap{ZZZZZZZZZZ} \&
\end{tikzcd}
\]
\end{frame}
\end{document}
решение3
Еще одно простое и самое короткое решение с tikz-cd
. После этого вы можете использовать код других замечательных пользователей.
\documentclass{article}
\usepackage{tikz-cd, amsmath,amssymb}
\begin{document}
\begin{tikzcd}
AAAAAAAA \arrow[Rightarrow,rd] & & BBBBBBBBBBB \arrow[Rightarrow,ld] \\
& CCCCCCCC \arrow[Rightarrow,dd] & \\
& & \\
& DDDDDD &
\end{tikzcd}
\end{document}