Getting extremely large arrows with tikzcdAdjusting the width of a displaymath environmenttikzcd, arrows not nicely alignedParallel arrows in tikzcd natural transformationRounded arrow in tikzcdDouble arrows in tikzcdTikzCD: everything is getting mashed togetherTikzcd question on arrowsArrows with tikzcd“equal” arrows without transparent ends possible in tikzcd?Boldface arrows in tikzcd
Why can't I see bouncing of a switch on an oscilloscope?
What are these boxed doors outside store fronts in New York?
Dragon forelimb placement
Writing rule stating superpower from different root cause is bad writing
To string or not to string
Finding angle with pure Geometry.
Why "Having chlorophyll without photosynthesis is actually very dangerous" and "like living with a bomb"?
Do I have a twin with permutated remainders?
Why does Kotter return in Welcome Back Kotter?
Either or Neither in sentence with another negative
Are the number of citations and number of published articles the most important criteria for a tenure promotion?
Fencing style for blades that can attack from a distance
A newer friend of my brother's gave him a load of baseball cards that are supposedly extremely valuable. Is this a scam?
Why do falling prices hurt debtors?
Can an x86 CPU running in real mode be considered to be basically an 8086 CPU?
Is it unprofessional to ask if a job posting on GlassDoor is real?
Theorems that impeded progress
Is it possible to do 50 km distance without any previous training?
Did Shadowfax go to Valinor?
Replacing matching entries in one column of a file by another column from a different file
Is it tax fraud for an individual to declare non-taxable revenue as taxable income? (US tax laws)
Adding span tags within wp_list_pages list items
Why not use SQL instead of GraphQL?
Is a conference paper whose proceedings will be published in IEEE Xplore counted as a publication?
Getting extremely large arrows with tikzcd
Adjusting the width of a displaymath environmenttikzcd, arrows not nicely alignedParallel arrows in tikzcd natural transformationRounded arrow in tikzcdDouble arrows in tikzcdTikzCD: everything is getting mashed togetherTikzcd question on arrowsArrows with tikzcd“equal” arrows without transparent ends possible in tikzcd?Boldface arrows in tikzcd
I have a quite large description of an arrow, and row sep = huge does not make the arrow long enough. Is there a way to format this better?
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
usepackagexcolor
begindocument
begintikzcd[column sep = huge, row sep = huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[r, shift left, "
u in hom(mathcalE)>"] arrow[r, shift right, "<F(u)
pi_dom(u) "'] & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument
tikz-arrows tikz-cd
add a comment |
I have a quite large description of an arrow, and row sep = huge does not make the arrow long enough. Is there a way to format this better?
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
usepackagexcolor
begindocument
begintikzcd[column sep = huge, row sep = huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[r, shift left, "
u in hom(mathcalE)>"] arrow[r, shift right, "<F(u)
pi_dom(u) "'] & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument
tikz-arrows tikz-cd
I've never seenhugeas an argument forcolumn sepbefore. If you look in the tikz-cd manual, you'll notice that you can give any arbitrary length (say 5cm) instead ofhuge, then manual states whathugeis an alias for.
– daleif
Apr 2 at 9:44
That said I'd probably consider rewriting this diagram instead and it will not be particularly readable for the reader anyway.
– daleif
Apr 2 at 9:45
add a comment |
I have a quite large description of an arrow, and row sep = huge does not make the arrow long enough. Is there a way to format this better?
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
usepackagexcolor
begindocument
begintikzcd[column sep = huge, row sep = huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[r, shift left, "
u in hom(mathcalE)>"] arrow[r, shift right, "<F(u)
pi_dom(u) "'] & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument
tikz-arrows tikz-cd
I have a quite large description of an arrow, and row sep = huge does not make the arrow long enough. Is there a way to format this better?
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
usepackagexcolor
begindocument
begintikzcd[column sep = huge, row sep = huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[r, shift left, "
u in hom(mathcalE)>"] arrow[r, shift right, "<F(u)
pi_dom(u) "'] & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument
tikz-arrows tikz-cd
tikz-arrows tikz-cd
edited Apr 2 at 14:51
JouleV
11.1k22560
11.1k22560
asked Apr 2 at 9:38
user388557user388557
1453
1453
I've never seenhugeas an argument forcolumn sepbefore. If you look in the tikz-cd manual, you'll notice that you can give any arbitrary length (say 5cm) instead ofhuge, then manual states whathugeis an alias for.
– daleif
Apr 2 at 9:44
That said I'd probably consider rewriting this diagram instead and it will not be particularly readable for the reader anyway.
– daleif
Apr 2 at 9:45
add a comment |
I've never seenhugeas an argument forcolumn sepbefore. If you look in the tikz-cd manual, you'll notice that you can give any arbitrary length (say 5cm) instead ofhuge, then manual states whathugeis an alias for.
– daleif
Apr 2 at 9:44
That said I'd probably consider rewriting this diagram instead and it will not be particularly readable for the reader anyway.
– daleif
Apr 2 at 9:45
I've never seen
huge as an argument for column sep before. If you look in the tikz-cd manual, you'll notice that you can give any arbitrary length (say 5cm) instead of huge, then manual states what huge is an alias for.– daleif
Apr 2 at 9:44
I've never seen
huge as an argument for column sep before. If you look in the tikz-cd manual, you'll notice that you can give any arbitrary length (say 5cm) instead of huge, then manual states what huge is an alias for.– daleif
Apr 2 at 9:44
That said I'd probably consider rewriting this diagram instead and it will not be particularly readable for the reader anyway.
– daleif
Apr 2 at 9:45
That said I'd probably consider rewriting this diagram instead and it will not be particularly readable for the reader anyway.
– daleif
Apr 2 at 9:45
add a comment |
4 Answers
4
active
oldest
votes
Here are two different ways

documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
DeclareMathOperatorobob
begindocument
Option 1: wide column separation specified by dimension
beginequation*
begintikzcd[column sep = 10em]
E arrow[r, "e"] & displaystyleprod_i in
ob(mathcalE) mkern-12mu F(i)
arrow[r, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"] arrow[r, shift right, "langle F(u)
pi_dom(u) mid u in
hom(mathcalE)rangle"']
& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
Option 2: let arrows cover two (or more) columns
beginequation*
begintikzcd[column sep = huge]
E arrow[r, "e"]
& displaystyleprod_i in ob(mathcalE) mkern-12mu F(i)
arrow[rr, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"]
arrow[rr, shift right, "langle F(u) pi_dom(u)
mid u in hom(mathcalE)rangle"']
&& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
enddocument
The first is simply to specify the column sep as a dimension.
The second is to add an extra column under the long arrows, so you have
A arrow[r] & B arrow[rr] && C
instead of
A arrow[r] & B arrow[r] & C
You can make this wider by using more columns
A arrow[r] & B arrow[rrr] &&& C
etc.
Note I have recoded much of your mathematics.
The above solutions corresponding to working with a fixed grid, which is often a good idea for consistent spacing. An alternative is the extra space syntax of egreg's answer:
&[5em]
in the first row, will push the subsequent column 5em to the right and so making the corresponding arrows longer.
add a comment |
Add a width specification:
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
prod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[8em]
prod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument
Note the adjustments I made:
<...>should belangle...ranglePishould beprod|should bemid- ob, dom and cod should be typeset upright

A possible alternative with smashoperator that makes the diagram shorter:
documentclassarticle
usepackageamsmath,mathtools
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
smashoperatorprod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[10em]
smashoperatorprod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument

2
Eventually, someone who knows the&[<lenght>]option, you beat me by a second, lol!
– CarLaTeX
Apr 2 at 10:31
+1 Of course, loadingamsmathis not needed once you loadmathtools.
– Andrew Swann
Apr 2 at 10:41
add a comment |
Add an empty column between columns 2 and 3. I also added some improvements to the diagram.
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
begindocument
begintikzcd[column sep= huge, row sep=huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[rr, shift left=1ex, "
langlepi_cod(u) , "] arrow[rr, shift right=1ex, "langle F(u)
pi_dom(u) , "'] & & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument

add a comment |
I remade everything in normal TikZ and correct (many) typos. Also, take note that I use langle and rangle instead of < and >. A curve is always more readable than a straight line in this case in my opinion.
documentclassstandalone
usepackageamsmath
usepackagetikz
usetikzlibrarypositioning
DeclareMathOperatorobob
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
begindocument
begintikzpicture[>=stealth]
node (mid) $prod_i in ob(mathcalE) F(i)$;
node[left=1cm of mid] (left) $E$;
node[right=4cm of mid] (right) $prod_u in hom(mathcalE)F(cod(u))$;
draw[->] (left)--(mid) node[midway,above] $scriptstyle e$;
draw[->] ([yshift=.2em]mid.east) to[bend left=5] node[midway,above] $scriptstylelanglepi_cod(u) ([yshift=.2em]right.west);
draw[->] ([yshift=-.2em]mid.east) to[bend right=5] node[midway,below] u in hom(mathcalE)rangle$ ([yshift=-.2em]right.west);
endtikzpicture
enddocument

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%2f482737%2fgetting-extremely-large-arrows-with-tikzcd%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
Here are two different ways

documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
DeclareMathOperatorobob
begindocument
Option 1: wide column separation specified by dimension
beginequation*
begintikzcd[column sep = 10em]
E arrow[r, "e"] & displaystyleprod_i in
ob(mathcalE) mkern-12mu F(i)
arrow[r, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"] arrow[r, shift right, "langle F(u)
pi_dom(u) mid u in
hom(mathcalE)rangle"']
& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
Option 2: let arrows cover two (or more) columns
beginequation*
begintikzcd[column sep = huge]
E arrow[r, "e"]
& displaystyleprod_i in ob(mathcalE) mkern-12mu F(i)
arrow[rr, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"]
arrow[rr, shift right, "langle F(u) pi_dom(u)
mid u in hom(mathcalE)rangle"']
&& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
enddocument
The first is simply to specify the column sep as a dimension.
The second is to add an extra column under the long arrows, so you have
A arrow[r] & B arrow[rr] && C
instead of
A arrow[r] & B arrow[r] & C
You can make this wider by using more columns
A arrow[r] & B arrow[rrr] &&& C
etc.
Note I have recoded much of your mathematics.
The above solutions corresponding to working with a fixed grid, which is often a good idea for consistent spacing. An alternative is the extra space syntax of egreg's answer:
&[5em]
in the first row, will push the subsequent column 5em to the right and so making the corresponding arrows longer.
add a comment |
Here are two different ways

documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
DeclareMathOperatorobob
begindocument
Option 1: wide column separation specified by dimension
beginequation*
begintikzcd[column sep = 10em]
E arrow[r, "e"] & displaystyleprod_i in
ob(mathcalE) mkern-12mu F(i)
arrow[r, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"] arrow[r, shift right, "langle F(u)
pi_dom(u) mid u in
hom(mathcalE)rangle"']
& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
Option 2: let arrows cover two (or more) columns
beginequation*
begintikzcd[column sep = huge]
E arrow[r, "e"]
& displaystyleprod_i in ob(mathcalE) mkern-12mu F(i)
arrow[rr, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"]
arrow[rr, shift right, "langle F(u) pi_dom(u)
mid u in hom(mathcalE)rangle"']
&& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
enddocument
The first is simply to specify the column sep as a dimension.
The second is to add an extra column under the long arrows, so you have
A arrow[r] & B arrow[rr] && C
instead of
A arrow[r] & B arrow[r] & C
You can make this wider by using more columns
A arrow[r] & B arrow[rrr] &&& C
etc.
Note I have recoded much of your mathematics.
The above solutions corresponding to working with a fixed grid, which is often a good idea for consistent spacing. An alternative is the extra space syntax of egreg's answer:
&[5em]
in the first row, will push the subsequent column 5em to the right and so making the corresponding arrows longer.
add a comment |
Here are two different ways

documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
DeclareMathOperatorobob
begindocument
Option 1: wide column separation specified by dimension
beginequation*
begintikzcd[column sep = 10em]
E arrow[r, "e"] & displaystyleprod_i in
ob(mathcalE) mkern-12mu F(i)
arrow[r, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"] arrow[r, shift right, "langle F(u)
pi_dom(u) mid u in
hom(mathcalE)rangle"']
& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
Option 2: let arrows cover two (or more) columns
beginequation*
begintikzcd[column sep = huge]
E arrow[r, "e"]
& displaystyleprod_i in ob(mathcalE) mkern-12mu F(i)
arrow[rr, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"]
arrow[rr, shift right, "langle F(u) pi_dom(u)
mid u in hom(mathcalE)rangle"']
&& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
enddocument
The first is simply to specify the column sep as a dimension.
The second is to add an extra column under the long arrows, so you have
A arrow[r] & B arrow[rr] && C
instead of
A arrow[r] & B arrow[r] & C
You can make this wider by using more columns
A arrow[r] & B arrow[rrr] &&& C
etc.
Note I have recoded much of your mathematics.
The above solutions corresponding to working with a fixed grid, which is often a good idea for consistent spacing. An alternative is the extra space syntax of egreg's answer:
&[5em]
in the first row, will push the subsequent column 5em to the right and so making the corresponding arrows longer.
Here are two different ways

documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
DeclareMathOperatorobob
begindocument
Option 1: wide column separation specified by dimension
beginequation*
begintikzcd[column sep = 10em]
E arrow[r, "e"] & displaystyleprod_i in
ob(mathcalE) mkern-12mu F(i)
arrow[r, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"] arrow[r, shift right, "langle F(u)
pi_dom(u) mid u in
hom(mathcalE)rangle"']
& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
Option 2: let arrows cover two (or more) columns
beginequation*
begintikzcd[column sep = huge]
E arrow[r, "e"]
& displaystyleprod_i in ob(mathcalE) mkern-12mu F(i)
arrow[rr, shift left, " langlepi_cod(u) mid u in
hom(mathcalE)rangle"]
arrow[rr, shift right, "langle F(u) pi_dom(u)
mid u in hom(mathcalE)rangle"']
&& displaystyleprod_u in hom(mathcalE) mkern-12mu F(cod(u))
endtikzcd
endequation*
enddocument
The first is simply to specify the column sep as a dimension.
The second is to add an extra column under the long arrows, so you have
A arrow[r] & B arrow[rr] && C
instead of
A arrow[r] & B arrow[r] & C
You can make this wider by using more columns
A arrow[r] & B arrow[rrr] &&& C
etc.
Note I have recoded much of your mathematics.
The above solutions corresponding to working with a fixed grid, which is often a good idea for consistent spacing. An alternative is the extra space syntax of egreg's answer:
&[5em]
in the first row, will push the subsequent column 5em to the right and so making the corresponding arrows longer.
edited Apr 3 at 6:37
answered Apr 2 at 10:02
Andrew SwannAndrew Swann
78k9132332
78k9132332
add a comment |
add a comment |
Add a width specification:
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
prod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[8em]
prod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument
Note the adjustments I made:
<...>should belangle...ranglePishould beprod|should bemid- ob, dom and cod should be typeset upright

A possible alternative with smashoperator that makes the diagram shorter:
documentclassarticle
usepackageamsmath,mathtools
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
smashoperatorprod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[10em]
smashoperatorprod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument

2
Eventually, someone who knows the&[<lenght>]option, you beat me by a second, lol!
– CarLaTeX
Apr 2 at 10:31
+1 Of course, loadingamsmathis not needed once you loadmathtools.
– Andrew Swann
Apr 2 at 10:41
add a comment |
Add a width specification:
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
prod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[8em]
prod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument
Note the adjustments I made:
<...>should belangle...ranglePishould beprod|should bemid- ob, dom and cod should be typeset upright

A possible alternative with smashoperator that makes the diagram shorter:
documentclassarticle
usepackageamsmath,mathtools
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
smashoperatorprod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[10em]
smashoperatorprod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument

2
Eventually, someone who knows the&[<lenght>]option, you beat me by a second, lol!
– CarLaTeX
Apr 2 at 10:31
+1 Of course, loadingamsmathis not needed once you loadmathtools.
– Andrew Swann
Apr 2 at 10:41
add a comment |
Add a width specification:
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
prod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[8em]
prod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument
Note the adjustments I made:
<...>should belangle...ranglePishould beprod|should bemid- ob, dom and cod should be typeset upright

A possible alternative with smashoperator that makes the diagram shorter:
documentclassarticle
usepackageamsmath,mathtools
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
smashoperatorprod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[10em]
smashoperatorprod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument

Add a width specification:
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
prod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[8em]
prod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument
Note the adjustments I made:
<...>should belangle...ranglePishould beprod|should bemid- ob, dom and cod should be typeset upright

A possible alternative with smashoperator that makes the diagram shorter:
documentclassarticle
usepackageamsmath,mathtools
usepackageamssymb
usepackagetikz-cd
DeclareMathOperatorobob
DeclareMathOperatordomdom
DeclareMathOperatorcodcod
begindocument
begintikzcd
E arrow[r, "e"] &
smashoperatorprod_i in ob(mathcalE) F(i)
arrow[
r, shift left,
"langlepi_cod(u) mid u in hom(mathcalE)rangle"
]
arrow[
r, shift right,
"langle F(u)pi_dom(u) mid u in hom(mathcalE)rangle"'
] &[10em]
smashoperatorprod_u in hom(mathcalE) F(cod(u))
endtikzcd
enddocument

answered Apr 2 at 10:27
egregegreg
732k8919303253
732k8919303253
2
Eventually, someone who knows the&[<lenght>]option, you beat me by a second, lol!
– CarLaTeX
Apr 2 at 10:31
+1 Of course, loadingamsmathis not needed once you loadmathtools.
– Andrew Swann
Apr 2 at 10:41
add a comment |
2
Eventually, someone who knows the&[<lenght>]option, you beat me by a second, lol!
– CarLaTeX
Apr 2 at 10:31
+1 Of course, loadingamsmathis not needed once you loadmathtools.
– Andrew Swann
Apr 2 at 10:41
2
2
Eventually, someone who knows the
&[<lenght>] option, you beat me by a second, lol!– CarLaTeX
Apr 2 at 10:31
Eventually, someone who knows the
&[<lenght>] option, you beat me by a second, lol!– CarLaTeX
Apr 2 at 10:31
+1 Of course, loading
amsmath is not needed once you load mathtools.– Andrew Swann
Apr 2 at 10:41
+1 Of course, loading
amsmath is not needed once you load mathtools.– Andrew Swann
Apr 2 at 10:41
add a comment |
Add an empty column between columns 2 and 3. I also added some improvements to the diagram.
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
begindocument
begintikzcd[column sep= huge, row sep=huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[rr, shift left=1ex, "
langlepi_cod(u) , "] arrow[rr, shift right=1ex, "langle F(u)
pi_dom(u) , "'] & & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument

add a comment |
Add an empty column between columns 2 and 3. I also added some improvements to the diagram.
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
begindocument
begintikzcd[column sep= huge, row sep=huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[rr, shift left=1ex, "
langlepi_cod(u) , "] arrow[rr, shift right=1ex, "langle F(u)
pi_dom(u) , "'] & & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument

add a comment |
Add an empty column between columns 2 and 3. I also added some improvements to the diagram.
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
begindocument
begintikzcd[column sep= huge, row sep=huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[rr, shift left=1ex, "
langlepi_cod(u) , "] arrow[rr, shift right=1ex, "langle F(u)
pi_dom(u) , "'] & & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument

Add an empty column between columns 2 and 3. I also added some improvements to the diagram.
documentclassarticle
usepackageamsmath
usepackageamssymb
usepackagetikz-cd
usepackagefullpage
usepackageamsthm
usepackageadjustbox
begindocument
begintikzcd[column sep= huge, row sep=huge]
E arrow[r, "e"] & Pi_i in ob(mathcalE) F(i) arrow[rr, shift left=1ex, "
langlepi_cod(u) , "] arrow[rr, shift right=1ex, "langle F(u)
pi_dom(u) , "'] & & Pi_u in hom(mathcalE)
F(cod(u))
endtikzcd
enddocument

answered Apr 2 at 10:10
BernardBernard
175k778208
175k778208
add a comment |
add a comment |
I remade everything in normal TikZ and correct (many) typos. Also, take note that I use langle and rangle instead of < and >. A curve is always more readable than a straight line in this case in my opinion.
documentclassstandalone
usepackageamsmath
usepackagetikz
usetikzlibrarypositioning
DeclareMathOperatorobob
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
begindocument
begintikzpicture[>=stealth]
node (mid) $prod_i in ob(mathcalE) F(i)$;
node[left=1cm of mid] (left) $E$;
node[right=4cm of mid] (right) $prod_u in hom(mathcalE)F(cod(u))$;
draw[->] (left)--(mid) node[midway,above] $scriptstyle e$;
draw[->] ([yshift=.2em]mid.east) to[bend left=5] node[midway,above] $scriptstylelanglepi_cod(u) ([yshift=.2em]right.west);
draw[->] ([yshift=-.2em]mid.east) to[bend right=5] node[midway,below] u in hom(mathcalE)rangle$ ([yshift=-.2em]right.west);
endtikzpicture
enddocument

add a comment |
I remade everything in normal TikZ and correct (many) typos. Also, take note that I use langle and rangle instead of < and >. A curve is always more readable than a straight line in this case in my opinion.
documentclassstandalone
usepackageamsmath
usepackagetikz
usetikzlibrarypositioning
DeclareMathOperatorobob
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
begindocument
begintikzpicture[>=stealth]
node (mid) $prod_i in ob(mathcalE) F(i)$;
node[left=1cm of mid] (left) $E$;
node[right=4cm of mid] (right) $prod_u in hom(mathcalE)F(cod(u))$;
draw[->] (left)--(mid) node[midway,above] $scriptstyle e$;
draw[->] ([yshift=.2em]mid.east) to[bend left=5] node[midway,above] $scriptstylelanglepi_cod(u) ([yshift=.2em]right.west);
draw[->] ([yshift=-.2em]mid.east) to[bend right=5] node[midway,below] u in hom(mathcalE)rangle$ ([yshift=-.2em]right.west);
endtikzpicture
enddocument

add a comment |
I remade everything in normal TikZ and correct (many) typos. Also, take note that I use langle and rangle instead of < and >. A curve is always more readable than a straight line in this case in my opinion.
documentclassstandalone
usepackageamsmath
usepackagetikz
usetikzlibrarypositioning
DeclareMathOperatorobob
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
begindocument
begintikzpicture[>=stealth]
node (mid) $prod_i in ob(mathcalE) F(i)$;
node[left=1cm of mid] (left) $E$;
node[right=4cm of mid] (right) $prod_u in hom(mathcalE)F(cod(u))$;
draw[->] (left)--(mid) node[midway,above] $scriptstyle e$;
draw[->] ([yshift=.2em]mid.east) to[bend left=5] node[midway,above] $scriptstylelanglepi_cod(u) ([yshift=.2em]right.west);
draw[->] ([yshift=-.2em]mid.east) to[bend right=5] node[midway,below] u in hom(mathcalE)rangle$ ([yshift=-.2em]right.west);
endtikzpicture
enddocument

I remade everything in normal TikZ and correct (many) typos. Also, take note that I use langle and rangle instead of < and >. A curve is always more readable than a straight line in this case in my opinion.
documentclassstandalone
usepackageamsmath
usepackagetikz
usetikzlibrarypositioning
DeclareMathOperatorobob
DeclareMathOperatorcodcod
DeclareMathOperatordomdom
begindocument
begintikzpicture[>=stealth]
node (mid) $prod_i in ob(mathcalE) F(i)$;
node[left=1cm of mid] (left) $E$;
node[right=4cm of mid] (right) $prod_u in hom(mathcalE)F(cod(u))$;
draw[->] (left)--(mid) node[midway,above] $scriptstyle e$;
draw[->] ([yshift=.2em]mid.east) to[bend left=5] node[midway,above] $scriptstylelanglepi_cod(u) ([yshift=.2em]right.west);
draw[->] ([yshift=-.2em]mid.east) to[bend right=5] node[midway,below] u in hom(mathcalE)rangle$ ([yshift=-.2em]right.west);
endtikzpicture
enddocument

edited Apr 2 at 10:12
answered Apr 2 at 10:02
JouleVJouleV
11.1k22560
11.1k22560
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%2f482737%2fgetting-extremely-large-arrows-with-tikzcd%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
I've never seen
hugeas an argument forcolumn sepbefore. If you look in the tikz-cd manual, you'll notice that you can give any arbitrary length (say 5cm) instead ofhuge, then manual states whathugeis an alias for.– daleif
Apr 2 at 9:44
That said I'd probably consider rewriting this diagram instead and it will not be particularly readable for the reader anyway.
– daleif
Apr 2 at 9:45