How to draw a stack in drawstack/TiKz?How to draw stack diagram with TiKz?Simple (execution) stack with pointers and comments using TikZstack multiple PDF pagesPassing stack data to tikz node namesPassing current counter value to stack data structureError “You can't pop an empty literal stack” in theapa.bsteuropecv stack exceedingPopping a stack item in a file streamHow to draw the Stack Overflow icon with TikZ?TeX capacity exceeded, sorry [input stack size=5000] error
Why did Varys remove his rings?
How to describe a building set which is like LEGO without using the "LEGO" word?
Is my test coverage up to snuff?
Using chord iii in a chord progression (major key)
Is there an academic word that means "to split hairs over"?
Polynomial division: Is this trick obvious?
Do people who work at research institutes consider themselves "academics"?
Why commonly or frequently used fonts sizes are even numbers like 10px, 12px, 16px, 24px, or 32px?
Why is the marginal distribution/marginal probability described as "marginal"?
How would you translate "grit" (personality trait) to Chinese?
Why do galaxies collide?
It is as easy as A B C, Figure out U V C from the given relationship
How to redirect stdout to a file, and stdout+stderr to another one?
Slice a list based on an index and items behind it in python
Understanding Python syntax in lists vs series
When did game consoles begin including FPUs?
tikz drawing rectangle discretized with triangle lattices and its centroids
Why is Drogon so much better in battle than Rhaegal and Viserion?
Does this "yield your space to an ally" rule my 3.5 group uses appear anywhere in the official rules?
Should I communicate in my applications that I'm unemployed out of choice rather than because nobody will have me?
Why does SSL Labs now consider CBC suites weak?
Would life always name the light from their sun "white"
What metal is most suitable for a ladder submerged in an underground water tank?
Which creature is depicted in this Xanathar's Guide illustration of a war mage?
How to draw a stack in drawstack/TiKz?
How to draw stack diagram with TiKz?Simple (execution) stack with pointers and comments using TikZstack multiple PDF pagesPassing stack data to tikz node namesPassing current counter value to stack data structureError “You can't pop an empty literal stack” in theapa.bsteuropecv stack exceedingPopping a stack item in a file streamHow to draw the Stack Overflow icon with TikZ?TeX capacity exceeded, sorry [input stack size=5000] error
I'm trying to replicate this picture (without the airplane)
I googled online and found the package drawstack but I couldn't find any documentation on how to use it. The closest I got to a minimal example is this:
documentclassarticle
usepackagegraphicx
usepackageenumitem
usepackageamsmath
setlengthparindent0pt
usepackagefloat
usepackagedrawstack
titletest
authorme
dateMay 2019
begindocument
maketitle
section*intro
begindrawstack
cellticket (purchase)
cellbaggage (check)
cellgates (load)
cellrunway (takeoff)
cellairplane routing
enddrawstack
begindrawstack
cellairplane routing
enddrawstack
begindrawstack
cellairplane routing
enddrawstack
begindrawstack
cellticket (complain)
cellbaggage (claim)
cellgates (unload)
cellrunway (land)
cellairplane routing
enddrawstack
enddocument
Which results in the following:
The result is obviously very far from what I wished as they're stacked on top of each other, I couldn't find a way to change the green color, I couldn't find a way to draw the arrow nor be able to write words that stay in place as the example I'm trying to replicate. Even though the example given is built using drawstack package, I wouldn't mind a solution using TiKz.
tikz-pgf stack
add a comment |
I'm trying to replicate this picture (without the airplane)
I googled online and found the package drawstack but I couldn't find any documentation on how to use it. The closest I got to a minimal example is this:
documentclassarticle
usepackagegraphicx
usepackageenumitem
usepackageamsmath
setlengthparindent0pt
usepackagefloat
usepackagedrawstack
titletest
authorme
dateMay 2019
begindocument
maketitle
section*intro
begindrawstack
cellticket (purchase)
cellbaggage (check)
cellgates (load)
cellrunway (takeoff)
cellairplane routing
enddrawstack
begindrawstack
cellairplane routing
enddrawstack
begindrawstack
cellairplane routing
enddrawstack
begindrawstack
cellticket (complain)
cellbaggage (claim)
cellgates (unload)
cellrunway (land)
cellairplane routing
enddrawstack
enddocument
Which results in the following:
The result is obviously very far from what I wished as they're stacked on top of each other, I couldn't find a way to change the green color, I couldn't find a way to draw the arrow nor be able to write words that stay in place as the example I'm trying to replicate. Even though the example given is built using drawstack package, I wouldn't mind a solution using TiKz.
tikz-pgf stack
add a comment |
I'm trying to replicate this picture (without the airplane)
I googled online and found the package drawstack but I couldn't find any documentation on how to use it. The closest I got to a minimal example is this:
documentclassarticle
usepackagegraphicx
usepackageenumitem
usepackageamsmath
setlengthparindent0pt
usepackagefloat
usepackagedrawstack
titletest
authorme
dateMay 2019
begindocument
maketitle
section*intro
begindrawstack
cellticket (purchase)
cellbaggage (check)
cellgates (load)
cellrunway (takeoff)
cellairplane routing
enddrawstack
begindrawstack
cellairplane routing
enddrawstack
begindrawstack
cellairplane routing
enddrawstack
begindrawstack
cellticket (complain)
cellbaggage (claim)
cellgates (unload)
cellrunway (land)
cellairplane routing
enddrawstack
enddocument
Which results in the following:
The result is obviously very far from what I wished as they're stacked on top of each other, I couldn't find a way to change the green color, I couldn't find a way to draw the arrow nor be able to write words that stay in place as the example I'm trying to replicate. Even though the example given is built using drawstack package, I wouldn't mind a solution using TiKz.
tikz-pgf stack
I'm trying to replicate this picture (without the airplane)
I googled online and found the package drawstack but I couldn't find any documentation on how to use it. The closest I got to a minimal example is this:
documentclassarticle
usepackagegraphicx
usepackageenumitem
usepackageamsmath
setlengthparindent0pt
usepackagefloat
usepackagedrawstack
titletest
authorme
dateMay 2019
begindocument
maketitle
section*intro
begindrawstack
cellticket (purchase)
cellbaggage (check)
cellgates (load)
cellrunway (takeoff)
cellairplane routing
enddrawstack
begindrawstack
cellairplane routing
enddrawstack
begindrawstack
cellairplane routing
enddrawstack
begindrawstack
cellticket (complain)
cellbaggage (claim)
cellgates (unload)
cellrunway (land)
cellairplane routing
enddrawstack
enddocument
Which results in the following:
The result is obviously very far from what I wished as they're stacked on top of each other, I couldn't find a way to change the green color, I couldn't find a way to draw the arrow nor be able to write words that stay in place as the example I'm trying to replicate. Even though the example given is built using drawstack package, I wouldn't mind a solution using TiKz.
tikz-pgf stack
tikz-pgf stack
asked May 4 at 10:55
Does it matterDoes it matter
3691216
3691216
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
TiKZ
could be an alternative to drawstack
.
documentclass[tikz, border=2mm]standalone
usetikzlibrarymatrix,positioning
usepackagelmodern
usepackagefontawesome5
begindocument
begintikzpicture[
level/.style=draw, minimum width=3cm, minimum height=8mm,
stack/.style=matrix of nodes, nodes=level, row sep=-pgflinewidth,
]
matrix[stack, label=[font=small, align=center, name=aux1]below:departure\ airport,
label=[font=Large, name=p1]above:faPlaneDeparture] (stackleft)
ticket (purchase) \
baggage (check) \
gates (load) \
runway (takeoff) \
airplane routing \;
node[level, right= of stackleft-5-1] (ar1) airplane routing;
node[level, right=of ar1] (ar2) airplane routing;
matrix[stack, label=[font=small, align=center, name=aux2]below:arrival\ airport,
label=[font=Large, name=p2]above:faPlaneArrival,
right=of ar2, anchor=stackright-5-1.west ] (stackright)
ticket (complain) \
baggage (claim) \
gates (unload) \
runway (land) \
airplane routing \;
node[font=Large] at (p1-|ar1) faPlane;
node[font=Large] at (p1-|ar2) faPlane;
path (aux1)--node[align=center, font=small]intermediate air-traffic\ control centers (aux2);
draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
endtikzpicture
enddocument
What would I have to do in order to add another arrow going the exact opposite way that doesn't overlap with the already existent one? I added:draw[red, very thick, <-] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
but this places it on top of it. I would prefer it it would be placed a bit under it.
– Does it matter
May 5 at 14:40
1
@Doesitmatter Change last line to add two auxiliar coordinates and add the new line:draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1) coordinate (aux5)--(aux1.south)--(aux2.south)--(stackright.east|-aux2) coordinate (aux6)--(stackright.north east); draw[red, very thick, <-] ([xshift=-2mm]stackleft.north west)--([shift=(-2mm,-1mm)]aux5)--([yshift=-2mm]aux1.south)--([yshift=-2mm]aux2.south)--([shift=(2mm,-1mm)]aux6)--([xshift=2mm]stackright.north east);
– Ignasi
May 5 at 16:34
You're a legend!
– Does it matter
May 5 at 16:35
add a comment |
drawstack
is poorly document package and consequently not very useful for your needs. better is to use pure tikz
. with multi part node from the shapes.multipart
library you can write:
documentclass[tikz, margin=3mm]standalone
usetikzlibraryarrows.meta,
calc,
positioning,
shapes.multipart
begindocument
begintikzpicture[
node distance = 3mm and 4mm,
base/.style = minimum width=32mm, node font=sffamily, align=center,
VMPN/.style = % Vertical Multi Part Node
rectangle split, rectangle split parts=5,
draw,
box/.style = base, draw
]
node (n1) [VMPN]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node (n2) [box, right=of n1.five east] airplane routing;
node (n3) [box, right=of n2] airplane routing;
node (n4) [VMPN, above right=0mm and 4mm of n3.south east]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node [above=of $(n2.north)!0.5!(n3.north)$]
includegraphics[width=32mm]example-image-duck;
%
node (n11) [base, below=of n1] departure airport;
node (n12) [base, below=of $(n2.south)!0.5!(n3.south)$]
intermediate air-trafic\control centers;
node (n131) [base, below=of n4] arrival airport;
%
draw[blue!50!black, ultra thick, rounded corners=4mm, -Triangle[angle=60:3pt 3]]
([xshift=-3mm] n1.north west) |- ([yshift=-3mm] n12.south) -|
([xshift= 3mm] n4.north east);
endtikzpicture
enddocument
The duck makes it 1000 times better. I better make a duck stack.
– Does it matter
May 5 at 13:09
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%2f489133%2fhow-to-draw-a-stack-in-drawstack-tikz%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
TiKZ
could be an alternative to drawstack
.
documentclass[tikz, border=2mm]standalone
usetikzlibrarymatrix,positioning
usepackagelmodern
usepackagefontawesome5
begindocument
begintikzpicture[
level/.style=draw, minimum width=3cm, minimum height=8mm,
stack/.style=matrix of nodes, nodes=level, row sep=-pgflinewidth,
]
matrix[stack, label=[font=small, align=center, name=aux1]below:departure\ airport,
label=[font=Large, name=p1]above:faPlaneDeparture] (stackleft)
ticket (purchase) \
baggage (check) \
gates (load) \
runway (takeoff) \
airplane routing \;
node[level, right= of stackleft-5-1] (ar1) airplane routing;
node[level, right=of ar1] (ar2) airplane routing;
matrix[stack, label=[font=small, align=center, name=aux2]below:arrival\ airport,
label=[font=Large, name=p2]above:faPlaneArrival,
right=of ar2, anchor=stackright-5-1.west ] (stackright)
ticket (complain) \
baggage (claim) \
gates (unload) \
runway (land) \
airplane routing \;
node[font=Large] at (p1-|ar1) faPlane;
node[font=Large] at (p1-|ar2) faPlane;
path (aux1)--node[align=center, font=small]intermediate air-traffic\ control centers (aux2);
draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
endtikzpicture
enddocument
What would I have to do in order to add another arrow going the exact opposite way that doesn't overlap with the already existent one? I added:draw[red, very thick, <-] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
but this places it on top of it. I would prefer it it would be placed a bit under it.
– Does it matter
May 5 at 14:40
1
@Doesitmatter Change last line to add two auxiliar coordinates and add the new line:draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1) coordinate (aux5)--(aux1.south)--(aux2.south)--(stackright.east|-aux2) coordinate (aux6)--(stackright.north east); draw[red, very thick, <-] ([xshift=-2mm]stackleft.north west)--([shift=(-2mm,-1mm)]aux5)--([yshift=-2mm]aux1.south)--([yshift=-2mm]aux2.south)--([shift=(2mm,-1mm)]aux6)--([xshift=2mm]stackright.north east);
– Ignasi
May 5 at 16:34
You're a legend!
– Does it matter
May 5 at 16:35
add a comment |
TiKZ
could be an alternative to drawstack
.
documentclass[tikz, border=2mm]standalone
usetikzlibrarymatrix,positioning
usepackagelmodern
usepackagefontawesome5
begindocument
begintikzpicture[
level/.style=draw, minimum width=3cm, minimum height=8mm,
stack/.style=matrix of nodes, nodes=level, row sep=-pgflinewidth,
]
matrix[stack, label=[font=small, align=center, name=aux1]below:departure\ airport,
label=[font=Large, name=p1]above:faPlaneDeparture] (stackleft)
ticket (purchase) \
baggage (check) \
gates (load) \
runway (takeoff) \
airplane routing \;
node[level, right= of stackleft-5-1] (ar1) airplane routing;
node[level, right=of ar1] (ar2) airplane routing;
matrix[stack, label=[font=small, align=center, name=aux2]below:arrival\ airport,
label=[font=Large, name=p2]above:faPlaneArrival,
right=of ar2, anchor=stackright-5-1.west ] (stackright)
ticket (complain) \
baggage (claim) \
gates (unload) \
runway (land) \
airplane routing \;
node[font=Large] at (p1-|ar1) faPlane;
node[font=Large] at (p1-|ar2) faPlane;
path (aux1)--node[align=center, font=small]intermediate air-traffic\ control centers (aux2);
draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
endtikzpicture
enddocument
What would I have to do in order to add another arrow going the exact opposite way that doesn't overlap with the already existent one? I added:draw[red, very thick, <-] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
but this places it on top of it. I would prefer it it would be placed a bit under it.
– Does it matter
May 5 at 14:40
1
@Doesitmatter Change last line to add two auxiliar coordinates and add the new line:draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1) coordinate (aux5)--(aux1.south)--(aux2.south)--(stackright.east|-aux2) coordinate (aux6)--(stackright.north east); draw[red, very thick, <-] ([xshift=-2mm]stackleft.north west)--([shift=(-2mm,-1mm)]aux5)--([yshift=-2mm]aux1.south)--([yshift=-2mm]aux2.south)--([shift=(2mm,-1mm)]aux6)--([xshift=2mm]stackright.north east);
– Ignasi
May 5 at 16:34
You're a legend!
– Does it matter
May 5 at 16:35
add a comment |
TiKZ
could be an alternative to drawstack
.
documentclass[tikz, border=2mm]standalone
usetikzlibrarymatrix,positioning
usepackagelmodern
usepackagefontawesome5
begindocument
begintikzpicture[
level/.style=draw, minimum width=3cm, minimum height=8mm,
stack/.style=matrix of nodes, nodes=level, row sep=-pgflinewidth,
]
matrix[stack, label=[font=small, align=center, name=aux1]below:departure\ airport,
label=[font=Large, name=p1]above:faPlaneDeparture] (stackleft)
ticket (purchase) \
baggage (check) \
gates (load) \
runway (takeoff) \
airplane routing \;
node[level, right= of stackleft-5-1] (ar1) airplane routing;
node[level, right=of ar1] (ar2) airplane routing;
matrix[stack, label=[font=small, align=center, name=aux2]below:arrival\ airport,
label=[font=Large, name=p2]above:faPlaneArrival,
right=of ar2, anchor=stackright-5-1.west ] (stackright)
ticket (complain) \
baggage (claim) \
gates (unload) \
runway (land) \
airplane routing \;
node[font=Large] at (p1-|ar1) faPlane;
node[font=Large] at (p1-|ar2) faPlane;
path (aux1)--node[align=center, font=small]intermediate air-traffic\ control centers (aux2);
draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
endtikzpicture
enddocument
TiKZ
could be an alternative to drawstack
.
documentclass[tikz, border=2mm]standalone
usetikzlibrarymatrix,positioning
usepackagelmodern
usepackagefontawesome5
begindocument
begintikzpicture[
level/.style=draw, minimum width=3cm, minimum height=8mm,
stack/.style=matrix of nodes, nodes=level, row sep=-pgflinewidth,
]
matrix[stack, label=[font=small, align=center, name=aux1]below:departure\ airport,
label=[font=Large, name=p1]above:faPlaneDeparture] (stackleft)
ticket (purchase) \
baggage (check) \
gates (load) \
runway (takeoff) \
airplane routing \;
node[level, right= of stackleft-5-1] (ar1) airplane routing;
node[level, right=of ar1] (ar2) airplane routing;
matrix[stack, label=[font=small, align=center, name=aux2]below:arrival\ airport,
label=[font=Large, name=p2]above:faPlaneArrival,
right=of ar2, anchor=stackright-5-1.west ] (stackright)
ticket (complain) \
baggage (claim) \
gates (unload) \
runway (land) \
airplane routing \;
node[font=Large] at (p1-|ar1) faPlane;
node[font=Large] at (p1-|ar2) faPlane;
path (aux1)--node[align=center, font=small]intermediate air-traffic\ control centers (aux2);
draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
endtikzpicture
enddocument
edited May 4 at 13:07
answered May 4 at 12:48
IgnasiIgnasi
97k6177325
97k6177325
What would I have to do in order to add another arrow going the exact opposite way that doesn't overlap with the already existent one? I added:draw[red, very thick, <-] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
but this places it on top of it. I would prefer it it would be placed a bit under it.
– Does it matter
May 5 at 14:40
1
@Doesitmatter Change last line to add two auxiliar coordinates and add the new line:draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1) coordinate (aux5)--(aux1.south)--(aux2.south)--(stackright.east|-aux2) coordinate (aux6)--(stackright.north east); draw[red, very thick, <-] ([xshift=-2mm]stackleft.north west)--([shift=(-2mm,-1mm)]aux5)--([yshift=-2mm]aux1.south)--([yshift=-2mm]aux2.south)--([shift=(2mm,-1mm)]aux6)--([xshift=2mm]stackright.north east);
– Ignasi
May 5 at 16:34
You're a legend!
– Does it matter
May 5 at 16:35
add a comment |
What would I have to do in order to add another arrow going the exact opposite way that doesn't overlap with the already existent one? I added:draw[red, very thick, <-] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
but this places it on top of it. I would prefer it it would be placed a bit under it.
– Does it matter
May 5 at 14:40
1
@Doesitmatter Change last line to add two auxiliar coordinates and add the new line:draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1) coordinate (aux5)--(aux1.south)--(aux2.south)--(stackright.east|-aux2) coordinate (aux6)--(stackright.north east); draw[red, very thick, <-] ([xshift=-2mm]stackleft.north west)--([shift=(-2mm,-1mm)]aux5)--([yshift=-2mm]aux1.south)--([yshift=-2mm]aux2.south)--([shift=(2mm,-1mm)]aux6)--([xshift=2mm]stackright.north east);
– Ignasi
May 5 at 16:34
You're a legend!
– Does it matter
May 5 at 16:35
What would I have to do in order to add another arrow going the exact opposite way that doesn't overlap with the already existent one? I added:
draw[red, very thick, <-] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
but this places it on top of it. I would prefer it it would be placed a bit under it.– Does it matter
May 5 at 14:40
What would I have to do in order to add another arrow going the exact opposite way that doesn't overlap with the already existent one? I added:
draw[red, very thick, <-] (stackleft.north west)--(stackleft.west|-aux1)--(aux1.south)--(aux2.south)--(stackright.east|-aux2)--(stackright.north east);
but this places it on top of it. I would prefer it it would be placed a bit under it.– Does it matter
May 5 at 14:40
1
1
@Doesitmatter Change last line to add two auxiliar coordinates and add the new line:
draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1) coordinate (aux5)--(aux1.south)--(aux2.south)--(stackright.east|-aux2) coordinate (aux6)--(stackright.north east); draw[red, very thick, <-] ([xshift=-2mm]stackleft.north west)--([shift=(-2mm,-1mm)]aux5)--([yshift=-2mm]aux1.south)--([yshift=-2mm]aux2.south)--([shift=(2mm,-1mm)]aux6)--([xshift=2mm]stackright.north east);
– Ignasi
May 5 at 16:34
@Doesitmatter Change last line to add two auxiliar coordinates and add the new line:
draw[blue, very thick, ->] (stackleft.north west)--(stackleft.west|-aux1) coordinate (aux5)--(aux1.south)--(aux2.south)--(stackright.east|-aux2) coordinate (aux6)--(stackright.north east); draw[red, very thick, <-] ([xshift=-2mm]stackleft.north west)--([shift=(-2mm,-1mm)]aux5)--([yshift=-2mm]aux1.south)--([yshift=-2mm]aux2.south)--([shift=(2mm,-1mm)]aux6)--([xshift=2mm]stackright.north east);
– Ignasi
May 5 at 16:34
You're a legend!
– Does it matter
May 5 at 16:35
You're a legend!
– Does it matter
May 5 at 16:35
add a comment |
drawstack
is poorly document package and consequently not very useful for your needs. better is to use pure tikz
. with multi part node from the shapes.multipart
library you can write:
documentclass[tikz, margin=3mm]standalone
usetikzlibraryarrows.meta,
calc,
positioning,
shapes.multipart
begindocument
begintikzpicture[
node distance = 3mm and 4mm,
base/.style = minimum width=32mm, node font=sffamily, align=center,
VMPN/.style = % Vertical Multi Part Node
rectangle split, rectangle split parts=5,
draw,
box/.style = base, draw
]
node (n1) [VMPN]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node (n2) [box, right=of n1.five east] airplane routing;
node (n3) [box, right=of n2] airplane routing;
node (n4) [VMPN, above right=0mm and 4mm of n3.south east]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node [above=of $(n2.north)!0.5!(n3.north)$]
includegraphics[width=32mm]example-image-duck;
%
node (n11) [base, below=of n1] departure airport;
node (n12) [base, below=of $(n2.south)!0.5!(n3.south)$]
intermediate air-trafic\control centers;
node (n131) [base, below=of n4] arrival airport;
%
draw[blue!50!black, ultra thick, rounded corners=4mm, -Triangle[angle=60:3pt 3]]
([xshift=-3mm] n1.north west) |- ([yshift=-3mm] n12.south) -|
([xshift= 3mm] n4.north east);
endtikzpicture
enddocument
The duck makes it 1000 times better. I better make a duck stack.
– Does it matter
May 5 at 13:09
add a comment |
drawstack
is poorly document package and consequently not very useful for your needs. better is to use pure tikz
. with multi part node from the shapes.multipart
library you can write:
documentclass[tikz, margin=3mm]standalone
usetikzlibraryarrows.meta,
calc,
positioning,
shapes.multipart
begindocument
begintikzpicture[
node distance = 3mm and 4mm,
base/.style = minimum width=32mm, node font=sffamily, align=center,
VMPN/.style = % Vertical Multi Part Node
rectangle split, rectangle split parts=5,
draw,
box/.style = base, draw
]
node (n1) [VMPN]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node (n2) [box, right=of n1.five east] airplane routing;
node (n3) [box, right=of n2] airplane routing;
node (n4) [VMPN, above right=0mm and 4mm of n3.south east]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node [above=of $(n2.north)!0.5!(n3.north)$]
includegraphics[width=32mm]example-image-duck;
%
node (n11) [base, below=of n1] departure airport;
node (n12) [base, below=of $(n2.south)!0.5!(n3.south)$]
intermediate air-trafic\control centers;
node (n131) [base, below=of n4] arrival airport;
%
draw[blue!50!black, ultra thick, rounded corners=4mm, -Triangle[angle=60:3pt 3]]
([xshift=-3mm] n1.north west) |- ([yshift=-3mm] n12.south) -|
([xshift= 3mm] n4.north east);
endtikzpicture
enddocument
The duck makes it 1000 times better. I better make a duck stack.
– Does it matter
May 5 at 13:09
add a comment |
drawstack
is poorly document package and consequently not very useful for your needs. better is to use pure tikz
. with multi part node from the shapes.multipart
library you can write:
documentclass[tikz, margin=3mm]standalone
usetikzlibraryarrows.meta,
calc,
positioning,
shapes.multipart
begindocument
begintikzpicture[
node distance = 3mm and 4mm,
base/.style = minimum width=32mm, node font=sffamily, align=center,
VMPN/.style = % Vertical Multi Part Node
rectangle split, rectangle split parts=5,
draw,
box/.style = base, draw
]
node (n1) [VMPN]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node (n2) [box, right=of n1.five east] airplane routing;
node (n3) [box, right=of n2] airplane routing;
node (n4) [VMPN, above right=0mm and 4mm of n3.south east]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node [above=of $(n2.north)!0.5!(n3.north)$]
includegraphics[width=32mm]example-image-duck;
%
node (n11) [base, below=of n1] departure airport;
node (n12) [base, below=of $(n2.south)!0.5!(n3.south)$]
intermediate air-trafic\control centers;
node (n131) [base, below=of n4] arrival airport;
%
draw[blue!50!black, ultra thick, rounded corners=4mm, -Triangle[angle=60:3pt 3]]
([xshift=-3mm] n1.north west) |- ([yshift=-3mm] n12.south) -|
([xshift= 3mm] n4.north east);
endtikzpicture
enddocument
drawstack
is poorly document package and consequently not very useful for your needs. better is to use pure tikz
. with multi part node from the shapes.multipart
library you can write:
documentclass[tikz, margin=3mm]standalone
usetikzlibraryarrows.meta,
calc,
positioning,
shapes.multipart
begindocument
begintikzpicture[
node distance = 3mm and 4mm,
base/.style = minimum width=32mm, node font=sffamily, align=center,
VMPN/.style = % Vertical Multi Part Node
rectangle split, rectangle split parts=5,
draw,
box/.style = base, draw
]
node (n1) [VMPN]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node (n2) [box, right=of n1.five east] airplane routing;
node (n3) [box, right=of n2] airplane routing;
node (n4) [VMPN, above right=0mm and 4mm of n3.south east]
nodepartone purchase (complain)
nodeparttwo baggage (claim)
nodepartthree gates (unload)
nodepartfour runway (land)
nodepartfive airplane routing
;
node [above=of $(n2.north)!0.5!(n3.north)$]
includegraphics[width=32mm]example-image-duck;
%
node (n11) [base, below=of n1] departure airport;
node (n12) [base, below=of $(n2.south)!0.5!(n3.south)$]
intermediate air-trafic\control centers;
node (n131) [base, below=of n4] arrival airport;
%
draw[blue!50!black, ultra thick, rounded corners=4mm, -Triangle[angle=60:3pt 3]]
([xshift=-3mm] n1.north west) |- ([yshift=-3mm] n12.south) -|
([xshift= 3mm] n4.north east);
endtikzpicture
enddocument
edited May 4 at 16:00
answered May 4 at 13:10
ZarkoZarko
134k872178
134k872178
The duck makes it 1000 times better. I better make a duck stack.
– Does it matter
May 5 at 13:09
add a comment |
The duck makes it 1000 times better. I better make a duck stack.
– Does it matter
May 5 at 13:09
The duck makes it 1000 times better. I better make a duck stack.
– Does it matter
May 5 at 13:09
The duck makes it 1000 times better. I better make a duck stack.
– Does it matter
May 5 at 13:09
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%2f489133%2fhow-to-draw-a-stack-in-drawstack-tikz%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