node position in tikz-cd
I'd like to get the appended below commutative diagram by using tikz-cd. The source has been made in TeX, and the positioning of the nodes at the bottom row i.e. coker ker f and ker coker f have been obtained by the macro hidewidth
. But how can I get a similar result of hidewidth
in tikzcd?
The code in tikz-cd, without the alignment I'd like to get, is the following:
begin{center}
begin{tikzcd}
ker f arrow[r,"varepsilon"] & A arrow[r,"f"] arrow[d] & Barrow[r,"pi"] & coker f \
& cokerker farrow[r,dotted,"bar f"] & kercoker farrow[u]
end{tikzcd}
end{center}
Thank you!
tikz-cd commutative-diagrams
add a comment |
I'd like to get the appended below commutative diagram by using tikz-cd. The source has been made in TeX, and the positioning of the nodes at the bottom row i.e. coker ker f and ker coker f have been obtained by the macro hidewidth
. But how can I get a similar result of hidewidth
in tikzcd?
The code in tikz-cd, without the alignment I'd like to get, is the following:
begin{center}
begin{tikzcd}
ker f arrow[r,"varepsilon"] & A arrow[r,"f"] arrow[d] & Barrow[r,"pi"] & coker f \
& cokerker farrow[r,dotted,"bar f"] & kercoker farrow[u]
end{tikzcd}
end{center}
Thank you!
tikz-cd commutative-diagrams
Do you want the down arrow pointing exactly tof
or should be centered withCoker Ker f
?
– Sigur
Feb 1 at 20:33
I want coker ker f to be anchored on the right and ker coker f on the left, respectively
– Lorenzo
Feb 1 at 20:35
Have you made the diagram intikz-cd
, without the proper alignment of those nodes? If so, can you post the code?
– Torbjørn T.
Feb 1 at 20:39
add a comment |
I'd like to get the appended below commutative diagram by using tikz-cd. The source has been made in TeX, and the positioning of the nodes at the bottom row i.e. coker ker f and ker coker f have been obtained by the macro hidewidth
. But how can I get a similar result of hidewidth
in tikzcd?
The code in tikz-cd, without the alignment I'd like to get, is the following:
begin{center}
begin{tikzcd}
ker f arrow[r,"varepsilon"] & A arrow[r,"f"] arrow[d] & Barrow[r,"pi"] & coker f \
& cokerker farrow[r,dotted,"bar f"] & kercoker farrow[u]
end{tikzcd}
end{center}
Thank you!
tikz-cd commutative-diagrams
I'd like to get the appended below commutative diagram by using tikz-cd. The source has been made in TeX, and the positioning of the nodes at the bottom row i.e. coker ker f and ker coker f have been obtained by the macro hidewidth
. But how can I get a similar result of hidewidth
in tikzcd?
The code in tikz-cd, without the alignment I'd like to get, is the following:
begin{center}
begin{tikzcd}
ker f arrow[r,"varepsilon"] & A arrow[r,"f"] arrow[d] & Barrow[r,"pi"] & coker f \
& cokerker farrow[r,dotted,"bar f"] & kercoker farrow[u]
end{tikzcd}
end{center}
Thank you!
tikz-cd commutative-diagrams
tikz-cd commutative-diagrams
edited Feb 1 at 20:42
Lorenzo
asked Feb 1 at 20:31
LorenzoLorenzo
719515
719515
Do you want the down arrow pointing exactly tof
or should be centered withCoker Ker f
?
– Sigur
Feb 1 at 20:33
I want coker ker f to be anchored on the right and ker coker f on the left, respectively
– Lorenzo
Feb 1 at 20:35
Have you made the diagram intikz-cd
, without the proper alignment of those nodes? If so, can you post the code?
– Torbjørn T.
Feb 1 at 20:39
add a comment |
Do you want the down arrow pointing exactly tof
or should be centered withCoker Ker f
?
– Sigur
Feb 1 at 20:33
I want coker ker f to be anchored on the right and ker coker f on the left, respectively
– Lorenzo
Feb 1 at 20:35
Have you made the diagram intikz-cd
, without the proper alignment of those nodes? If so, can you post the code?
– Torbjørn T.
Feb 1 at 20:39
Do you want the down arrow pointing exactly to
f
or should be centered with Coker Ker f
?– Sigur
Feb 1 at 20:33
Do you want the down arrow pointing exactly to
f
or should be centered with Coker Ker f
?– Sigur
Feb 1 at 20:33
I want coker ker f to be anchored on the right and ker coker f on the left, respectively
– Lorenzo
Feb 1 at 20:35
I want coker ker f to be anchored on the right and ker coker f on the left, respectively
– Lorenzo
Feb 1 at 20:35
Have you made the diagram in
tikz-cd
, without the proper alignment of those nodes? If so, can you post the code?– Torbjørn T.
Feb 1 at 20:39
Have you made the diagram in
tikz-cd
, without the proper alignment of those nodes? If so, can you post the code?– Torbjørn T.
Feb 1 at 20:39
add a comment |
4 Answers
4
active
oldest
votes
Maybe not a perfect solution, but it is starting point.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}
operatorname{Ker} f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & operatorname{Coker} f \
& llap{$operatorname{Coker} operatorname{Ker}{}$}f arrow[r] & mathrm{K} rlap{$operatorname{er}operatorname{Coker} f $}arrow[u]
end{tikzcd}
]
end{document}
add a comment |
A variant based on mathllap
and mathrlap
from mathtools
; and a simple makebox
:
documentclass{report}
usepackage{mathtools,amssymb}
usepackage{tikz-cd}
usepackage{calc}
DeclareMathOperator{Ker}{Ker}
DeclareMathOperator{Coker}{Coker}
begin{document}
[
begin{tikzcd}
Ker f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & Coker f \
& mathllap{Coker Ker{}} f arrow[r] & makebox[widthof{$B$}][l] {$mathrlap{KerCoker f}$}arrow[u]
end{tikzcd}
]
end{document}
add a comment |
A pure tikz-cd
solution, without hacking with makebox
, mathllap
, llap
or similar.
You can use the option:
/tikz/column 2/.append style={nodes={anchor=base east}}
to right align the nodes of the second column and:
/tikz/column 3/.append style={nodes={anchor=base west}}
to left align the nodes of the second column.
Then you can use the option to path
to indicate the path you need, for example to path={-- (tikztostart |- tikztotarget.north)}]
means "go to the point which has the x coordinate of the starting point and the y coordinate of the endpoint, north anchor.
For the arrow from the bottom left node to B, I used <-
to invert the direction of the arrow in order to start it from B and being able to use to path
.
I've also used &[-5em]
to reduce the space between the first and the second column and between the third and the last.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}[%
/tikz/column 2/.append style={nodes={anchor=base east}},
/tikz/column 3/.append style={nodes={anchor=base west}}
]
operatorname{Ker} f arrow[r] &[-5em] A arrow[r]arrow[d, start anchor=south,to path={-- (tikztostart |- tikztotarget.north)}] & B arrow[r]arrow[d, <-,to path={-- (tikztostart |- tikztotarget.north)}] &[-5em] operatorname{Coker} f \
& operatorname{Coker} operatorname{Ker} f arrow[r] & operatorname{Ker} operatorname{Coker} f
end{tikzcd}
]
end{document}
add a comment |
To be honest I'd prefer the top one. Anyway, this case can be solved by simply assign a fixed width to the long objects, here 1em, making them stick to the left and to the right respectively.
documentclass{article}
usepackage{amsmath}
usepackage{tikz-cd}
DeclareMathOperator{coker}{coker}
begin{document}
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
cokerker f arrow[r,dashed,"bar f"] &
kercoker f arrow[u]
end{tikzcd}
]
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
makebox[1em][r]{$cokerker f$} arrow[r,dashed,"bar f"] &
makebox[1em][l]{$kercoker f$} arrow[u]
end{tikzcd}
]
end{document}
Why not center
? Because with [...]
the display will not be separated by the text above it (no blank line before [
).
If you prefer “Ker” and “Coker” with the capital letter, use DeclareMathOperator
as shown for defining Ker
and Coker
.
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f472946%2fnode-position-in-tikz-cd%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
4 Answers
4
active
oldest
votes
4 Answers
4
active
oldest
votes
active
oldest
votes
active
oldest
votes
Maybe not a perfect solution, but it is starting point.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}
operatorname{Ker} f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & operatorname{Coker} f \
& llap{$operatorname{Coker} operatorname{Ker}{}$}f arrow[r] & mathrm{K} rlap{$operatorname{er}operatorname{Coker} f $}arrow[u]
end{tikzcd}
]
end{document}
add a comment |
Maybe not a perfect solution, but it is starting point.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}
operatorname{Ker} f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & operatorname{Coker} f \
& llap{$operatorname{Coker} operatorname{Ker}{}$}f arrow[r] & mathrm{K} rlap{$operatorname{er}operatorname{Coker} f $}arrow[u]
end{tikzcd}
]
end{document}
add a comment |
Maybe not a perfect solution, but it is starting point.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}
operatorname{Ker} f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & operatorname{Coker} f \
& llap{$operatorname{Coker} operatorname{Ker}{}$}f arrow[r] & mathrm{K} rlap{$operatorname{er}operatorname{Coker} f $}arrow[u]
end{tikzcd}
]
end{document}
Maybe not a perfect solution, but it is starting point.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}
operatorname{Ker} f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & operatorname{Coker} f \
& llap{$operatorname{Coker} operatorname{Ker}{}$}f arrow[r] & mathrm{K} rlap{$operatorname{er}operatorname{Coker} f $}arrow[u]
end{tikzcd}
]
end{document}
answered Feb 1 at 20:41
SigurSigur
24.7k356139
24.7k356139
add a comment |
add a comment |
A variant based on mathllap
and mathrlap
from mathtools
; and a simple makebox
:
documentclass{report}
usepackage{mathtools,amssymb}
usepackage{tikz-cd}
usepackage{calc}
DeclareMathOperator{Ker}{Ker}
DeclareMathOperator{Coker}{Coker}
begin{document}
[
begin{tikzcd}
Ker f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & Coker f \
& mathllap{Coker Ker{}} f arrow[r] & makebox[widthof{$B$}][l] {$mathrlap{KerCoker f}$}arrow[u]
end{tikzcd}
]
end{document}
add a comment |
A variant based on mathllap
and mathrlap
from mathtools
; and a simple makebox
:
documentclass{report}
usepackage{mathtools,amssymb}
usepackage{tikz-cd}
usepackage{calc}
DeclareMathOperator{Ker}{Ker}
DeclareMathOperator{Coker}{Coker}
begin{document}
[
begin{tikzcd}
Ker f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & Coker f \
& mathllap{Coker Ker{}} f arrow[r] & makebox[widthof{$B$}][l] {$mathrlap{KerCoker f}$}arrow[u]
end{tikzcd}
]
end{document}
add a comment |
A variant based on mathllap
and mathrlap
from mathtools
; and a simple makebox
:
documentclass{report}
usepackage{mathtools,amssymb}
usepackage{tikz-cd}
usepackage{calc}
DeclareMathOperator{Ker}{Ker}
DeclareMathOperator{Coker}{Coker}
begin{document}
[
begin{tikzcd}
Ker f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & Coker f \
& mathllap{Coker Ker{}} f arrow[r] & makebox[widthof{$B$}][l] {$mathrlap{KerCoker f}$}arrow[u]
end{tikzcd}
]
end{document}
A variant based on mathllap
and mathrlap
from mathtools
; and a simple makebox
:
documentclass{report}
usepackage{mathtools,amssymb}
usepackage{tikz-cd}
usepackage{calc}
DeclareMathOperator{Ker}{Ker}
DeclareMathOperator{Coker}{Coker}
begin{document}
[
begin{tikzcd}
Ker f arrow[r] & A arrow[r]arrow[d] & B arrow[r] & Coker f \
& mathllap{Coker Ker{}} f arrow[r] & makebox[widthof{$B$}][l] {$mathrlap{KerCoker f}$}arrow[u]
end{tikzcd}
]
end{document}
edited Feb 1 at 22:11
answered Feb 1 at 21:58
BernardBernard
169k773198
169k773198
add a comment |
add a comment |
A pure tikz-cd
solution, without hacking with makebox
, mathllap
, llap
or similar.
You can use the option:
/tikz/column 2/.append style={nodes={anchor=base east}}
to right align the nodes of the second column and:
/tikz/column 3/.append style={nodes={anchor=base west}}
to left align the nodes of the second column.
Then you can use the option to path
to indicate the path you need, for example to path={-- (tikztostart |- tikztotarget.north)}]
means "go to the point which has the x coordinate of the starting point and the y coordinate of the endpoint, north anchor.
For the arrow from the bottom left node to B, I used <-
to invert the direction of the arrow in order to start it from B and being able to use to path
.
I've also used &[-5em]
to reduce the space between the first and the second column and between the third and the last.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}[%
/tikz/column 2/.append style={nodes={anchor=base east}},
/tikz/column 3/.append style={nodes={anchor=base west}}
]
operatorname{Ker} f arrow[r] &[-5em] A arrow[r]arrow[d, start anchor=south,to path={-- (tikztostart |- tikztotarget.north)}] & B arrow[r]arrow[d, <-,to path={-- (tikztostart |- tikztotarget.north)}] &[-5em] operatorname{Coker} f \
& operatorname{Coker} operatorname{Ker} f arrow[r] & operatorname{Ker} operatorname{Coker} f
end{tikzcd}
]
end{document}
add a comment |
A pure tikz-cd
solution, without hacking with makebox
, mathllap
, llap
or similar.
You can use the option:
/tikz/column 2/.append style={nodes={anchor=base east}}
to right align the nodes of the second column and:
/tikz/column 3/.append style={nodes={anchor=base west}}
to left align the nodes of the second column.
Then you can use the option to path
to indicate the path you need, for example to path={-- (tikztostart |- tikztotarget.north)}]
means "go to the point which has the x coordinate of the starting point and the y coordinate of the endpoint, north anchor.
For the arrow from the bottom left node to B, I used <-
to invert the direction of the arrow in order to start it from B and being able to use to path
.
I've also used &[-5em]
to reduce the space between the first and the second column and between the third and the last.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}[%
/tikz/column 2/.append style={nodes={anchor=base east}},
/tikz/column 3/.append style={nodes={anchor=base west}}
]
operatorname{Ker} f arrow[r] &[-5em] A arrow[r]arrow[d, start anchor=south,to path={-- (tikztostart |- tikztotarget.north)}] & B arrow[r]arrow[d, <-,to path={-- (tikztostart |- tikztotarget.north)}] &[-5em] operatorname{Coker} f \
& operatorname{Coker} operatorname{Ker} f arrow[r] & operatorname{Ker} operatorname{Coker} f
end{tikzcd}
]
end{document}
add a comment |
A pure tikz-cd
solution, without hacking with makebox
, mathllap
, llap
or similar.
You can use the option:
/tikz/column 2/.append style={nodes={anchor=base east}}
to right align the nodes of the second column and:
/tikz/column 3/.append style={nodes={anchor=base west}}
to left align the nodes of the second column.
Then you can use the option to path
to indicate the path you need, for example to path={-- (tikztostart |- tikztotarget.north)}]
means "go to the point which has the x coordinate of the starting point and the y coordinate of the endpoint, north anchor.
For the arrow from the bottom left node to B, I used <-
to invert the direction of the arrow in order to start it from B and being able to use to path
.
I've also used &[-5em]
to reduce the space between the first and the second column and between the third and the last.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}[%
/tikz/column 2/.append style={nodes={anchor=base east}},
/tikz/column 3/.append style={nodes={anchor=base west}}
]
operatorname{Ker} f arrow[r] &[-5em] A arrow[r]arrow[d, start anchor=south,to path={-- (tikztostart |- tikztotarget.north)}] & B arrow[r]arrow[d, <-,to path={-- (tikztostart |- tikztotarget.north)}] &[-5em] operatorname{Coker} f \
& operatorname{Coker} operatorname{Ker} f arrow[r] & operatorname{Ker} operatorname{Coker} f
end{tikzcd}
]
end{document}
A pure tikz-cd
solution, without hacking with makebox
, mathllap
, llap
or similar.
You can use the option:
/tikz/column 2/.append style={nodes={anchor=base east}}
to right align the nodes of the second column and:
/tikz/column 3/.append style={nodes={anchor=base west}}
to left align the nodes of the second column.
Then you can use the option to path
to indicate the path you need, for example to path={-- (tikztostart |- tikztotarget.north)}]
means "go to the point which has the x coordinate of the starting point and the y coordinate of the endpoint, north anchor.
For the arrow from the bottom left node to B, I used <-
to invert the direction of the arrow in order to start it from B and being able to use to path
.
I've also used &[-5em]
to reduce the space between the first and the second column and between the third and the last.
documentclass{report}
usepackage{amsthm,amsmath,amssymb,amsfonts}
usepackage{tikz-cd}
begin{document}
[
begin{tikzcd}[%
/tikz/column 2/.append style={nodes={anchor=base east}},
/tikz/column 3/.append style={nodes={anchor=base west}}
]
operatorname{Ker} f arrow[r] &[-5em] A arrow[r]arrow[d, start anchor=south,to path={-- (tikztostart |- tikztotarget.north)}] & B arrow[r]arrow[d, <-,to path={-- (tikztostart |- tikztotarget.north)}] &[-5em] operatorname{Coker} f \
& operatorname{Coker} operatorname{Ker} f arrow[r] & operatorname{Ker} operatorname{Coker} f
end{tikzcd}
]
end{document}
answered Feb 2 at 7:09
CarLaTeXCarLaTeX
31.3k449130
31.3k449130
add a comment |
add a comment |
To be honest I'd prefer the top one. Anyway, this case can be solved by simply assign a fixed width to the long objects, here 1em, making them stick to the left and to the right respectively.
documentclass{article}
usepackage{amsmath}
usepackage{tikz-cd}
DeclareMathOperator{coker}{coker}
begin{document}
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
cokerker f arrow[r,dashed,"bar f"] &
kercoker f arrow[u]
end{tikzcd}
]
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
makebox[1em][r]{$cokerker f$} arrow[r,dashed,"bar f"] &
makebox[1em][l]{$kercoker f$} arrow[u]
end{tikzcd}
]
end{document}
Why not center
? Because with [...]
the display will not be separated by the text above it (no blank line before [
).
If you prefer “Ker” and “Coker” with the capital letter, use DeclareMathOperator
as shown for defining Ker
and Coker
.
add a comment |
To be honest I'd prefer the top one. Anyway, this case can be solved by simply assign a fixed width to the long objects, here 1em, making them stick to the left and to the right respectively.
documentclass{article}
usepackage{amsmath}
usepackage{tikz-cd}
DeclareMathOperator{coker}{coker}
begin{document}
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
cokerker f arrow[r,dashed,"bar f"] &
kercoker f arrow[u]
end{tikzcd}
]
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
makebox[1em][r]{$cokerker f$} arrow[r,dashed,"bar f"] &
makebox[1em][l]{$kercoker f$} arrow[u]
end{tikzcd}
]
end{document}
Why not center
? Because with [...]
the display will not be separated by the text above it (no blank line before [
).
If you prefer “Ker” and “Coker” with the capital letter, use DeclareMathOperator
as shown for defining Ker
and Coker
.
add a comment |
To be honest I'd prefer the top one. Anyway, this case can be solved by simply assign a fixed width to the long objects, here 1em, making them stick to the left and to the right respectively.
documentclass{article}
usepackage{amsmath}
usepackage{tikz-cd}
DeclareMathOperator{coker}{coker}
begin{document}
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
cokerker f arrow[r,dashed,"bar f"] &
kercoker f arrow[u]
end{tikzcd}
]
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
makebox[1em][r]{$cokerker f$} arrow[r,dashed,"bar f"] &
makebox[1em][l]{$kercoker f$} arrow[u]
end{tikzcd}
]
end{document}
Why not center
? Because with [...]
the display will not be separated by the text above it (no blank line before [
).
If you prefer “Ker” and “Coker” with the capital letter, use DeclareMathOperator
as shown for defining Ker
and Coker
.
To be honest I'd prefer the top one. Anyway, this case can be solved by simply assign a fixed width to the long objects, here 1em, making them stick to the left and to the right respectively.
documentclass{article}
usepackage{amsmath}
usepackage{tikz-cd}
DeclareMathOperator{coker}{coker}
begin{document}
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
cokerker f arrow[r,dashed,"bar f"] &
kercoker f arrow[u]
end{tikzcd}
]
[% not center
begin{tikzcd}
ker f arrow[r,"varepsilon"] &
A arrow[r,"f"] arrow[d] &
Barrow[r,"pi"] & coker f
\
&
makebox[1em][r]{$cokerker f$} arrow[r,dashed,"bar f"] &
makebox[1em][l]{$kercoker f$} arrow[u]
end{tikzcd}
]
end{document}
Why not center
? Because with [...]
the display will not be separated by the text above it (no blank line before [
).
If you prefer “Ker” and “Coker” with the capital letter, use DeclareMathOperator
as shown for defining Ker
and Coker
.
answered Feb 1 at 23:15
egregegreg
718k8719053202
718k8719053202
add a comment |
add a comment |
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f472946%2fnode-position-in-tikz-cd%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Do you want the down arrow pointing exactly to
f
or should be centered withCoker Ker f
?– Sigur
Feb 1 at 20:33
I want coker ker f to be anchored on the right and ker coker f on the left, respectively
– Lorenzo
Feb 1 at 20:35
Have you made the diagram in
tikz-cd
, without the proper alignment of those nodes? If so, can you post the code?– Torbjørn T.
Feb 1 at 20:39