我正在写一个简单的交换图,第二行的一些对象是第一行对象的子集,因此,我希望使用集合包含符号(向左倾斜 90 度并有效替换箭头)而不是向上的箭头。使用 $\cong$ 符号似乎很容易实现,但我找不到带有子集或 supset 符号的示例。
答案1
从概念上来说非常类似Bernard 的精彩回答,但基于tikz-cd
。
\documentclass[12pt]{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}[remember picture]
A \arrow[r] & B\\
C \arrow[r] & D\\
\end{tikzcd}
\begin{tikzpicture}[overlay,remember picture]
\path (\tikzcdmatrixname-1-1) to node[midway,sloped]{$\subset$}
(\tikzcdmatrixname-2-1);
\path (\tikzcdmatrixname-1-2) to node[midway,sloped]{$\subset$}
(\tikzcdmatrixname-2-2);
\end{tikzpicture}
\end{document}
答案2
tikzcd
这可以通过使用幻影箭头单独完成:
如果您希望行更紧凑[row sep=small]
,可以添加或设置row sep
为您喜欢的任意长度。
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd} % [row sep=small]
A\arrow[r] & B\\
C\arrow[r]\arrow[u, phantom, sloped, "\subset"] & D\arrow[u, phantom, sloped, "\subset"]
\end{tikzcd}
\end{document}
答案3
只是为了好玩,一个简单的解决方案与psmatrix
环境来自pstricks
:
\documentclass[border=5pt, 11pt]{standalone}
\usepackage{mathtools}
\usepackage{graphicx}
\usepackage{pst-node, auto-pst-pdf}
\newpsobject{ncemptyline}{ncline}{linestyle=none}
\newcommand*\ncsubset[2]{\ncemptyline{#1}{#2}\ncput[nrot=:U]{\subset}}
\begin{document}
$ \psset{npos = 0.45}
\begin{psmatrix}[rowsep = 0.4, colsep =1cm]
[name = L] L & [name = L1] L'\\
[name = K] K & [name = K1] K'
\ncsubset{K}{L}\ncsubset{K1}{L1}
\psset{arrows=->, arrowinset=0.12, linewidth=0.5pt, nodesep=2pt}
\ncline{K}{K1}\ncline{L}{L1}
\end{psmatrix} $
\end{document}
答案4
使用优秀的代码https://tex.stackexchange.com/a/216042/4427
\documentclass{article}
\usepackage{tikz-cd}
% https://tex.stackexchange.com/a/216042/4427
\tikzset{
symbol/.style={
draw=none,
every to/.append style={
edge node={node [sloped, allow upside down, auto=false]{$#1$}}}
}
}
\begin{document}
\begin{tikzcd}[row sep=small]
A\arrow[r] & B\\
C\arrow[r]\arrow[u,symbol=\subset] & D\arrow[u,symbol=\subset]
\end{tikzcd}
\end{document}