使用的想法https://tex.stackexchange.com/a/394924/305075我用来execute at end picture
在图表中绘制椭圆tikz-cd
。椭圆所适合的节点名称的形式为tikz@f@1-1-1
。
第二次应用这个想法的结果表明,两个图之间似乎存在某种干扰。好像第二个图中使用了第一个图中节点的位置。
我尝试将名称重命名为类似的名称tikz@g@1-1-1
(请参阅g
而不是f
),但没有成功。
我的主要问题,如标题:如何tikz-cd
在一个文档中多次在图表中的节点周围放置省略号?
第二个问题:我们可以将 重命名tikz@f@1-1-1
为tikz@g@1-1-1
当然g
只是一个例子吗?
最后,我喜欢画出几个带有态射和函子的类别图。属于同一类别的对象应通过在其周围放置一个椭圆来分组。每个类别一个椭圆。我给出的示例要简单得多,以便专注于问题。
我尝试这个:
\documentclass[a4paper]{amsart}
\usepackage{tikz}
\usepackage{tikz-cd}
\begin{document}
\usetikzlibrary{shapes.geometric,fit}
\tikzset{
dashellipse/.style={ellipse,draw,dashed,inner sep=0pt,blue,fit={#1}}
}
\begin{equation}
\begin{tikzcd}[
name=jk,
execute at end picture={
\node[dashellipse=(tikz@f@1-1-1)(tikz@f@1-1-3)]{};
}
]
X && Y
\end{tikzcd}
\end{equation}
\begin{equation}
\begin{tikzcd}[
name=mycustommatrix,
execute at end picture={
\node[dashellipse=(tikz@f@1-1-1)]{};
}
]
X
\end{tikzcd}
\end{equation}
\end{document}
答案1
像这样吗?
纯tikz
图片,使用chains
、fit
和shapes.geometric
Ti钾Z 库:
\documentclass[a4paper]{amsart}
\usepackage{tikz}
\usetikzlibrary{chains,
fit,
shapes.geometric}
\tikzset{
node distance = 0mm and 9mm,
start chain = going right,
N/.style = {inner sep=1pt, on chain},
de/.style = {ellipse, draw=blue, densely dashed, inner xsep=-3pt,
fit={#1}, node contents={}},
every picture/.append style = baseline=(current bounding box.base)
}
\begin{document}
\begin{equation}
\begin{tikzpicture}
\node (n1) [N] {A}; \node (n2) [N] {B};
\node[de=(n1) (n2)];
\end{tikzpicture}
\end{equation}
\begin{equation}
\begin{tikzpicture}
\foreach \i [count=\j] in {C, , D}
\node (n\j) [N] {\i};
\node[de=(n1) (n3)];
\end{tikzpicture}
\end{equation}
\begin{equation}
\begin{tikzpicture}
\foreach \i [count=\j] in {C, D, E, F, G}
\node (n\j) [N] {\i};
\node[de=(n1) (n3)];
\node[de=(n4) (n5)];
\end{tikzpicture}
\end{equation}
\begin{equation}
\begin{tikzpicture}
\node (n1) {X};
\node[de=(n1)];
\end{tikzpicture}
\end{equation}
\end{document}