Work Breakdown with TikzTikZ: Cropping the Bounding BoxTop-align text in a TikZ node of given size for single- and multiline caseDecorate path with just a colored thick lineWork breakdown structure (WBS) TikZHow to define the default vertical distance between nodes?TikZ scaling graphic and adjust node position and keep font sizetrapezium, how to calculate angles?Input/Output Nodes - Specification and Description LanguageAdjusting edge alignment and positioning of fitted nodetikz and pgfdeclareshape why the text is not at the center anchor?
What typically incentivizes a professor to change jobs to a lower ranking university?
What makes Graph invariants so useful/important?
Why are 150k or 200k jobs considered good when there are 300k+ births a month?
"The augmented fourth (A4) and the diminished fifth (d5) are the only augmented and diminished intervals that appear in diatonic scales"
Is Social Media Science Fiction?
How can the DM most effectively choose 1 out of an odd number of players to be targeted by an attack or effect?
Motorized valve interfering with button?
Could a US political party gain complete control over the government by removing checks & balances?
Prevent a directory in /tmp from being deleted
DOS, create pipe for stdin/stdout of command.com(or 4dos.com) in C or Batch?
Why do we use polarized capacitor?
What is the white spray-pattern residue inside these Falcon Heavy nozzles?
When blogging recipes, how can I support both readers who want the narrative/journey and ones who want the printer-friendly recipe?
Calculus Optimization - Point on graph closest to given point
How is it possible for user's password to be changed after storage was encrypted? (on OS X, Android)
"which" command doesn't work / path of Safari?
least quadratic residue under GRH: an EXPLICIT bound
Can an x86 CPU running in real mode be considered to be basically an 8086 CPU?
Can town administrative "code" overule state laws like those forbidding trespassing?
A function which translates a sentence to title-case
Draw simple lines in Inkscape
What does "enim et" mean?
N.B. ligature in Latex
A newer friend of my brother's gave him a load of baseball cards that are supposedly extremely valuable. Is this a scam?
Work Breakdown with Tikz
TikZ: Cropping the Bounding BoxTop-align text in a TikZ node of given size for single- and multiline caseDecorate path with just a colored thick lineWork breakdown structure (WBS) TikZHow to define the default vertical distance between nodes?TikZ scaling graphic and adjust node position and keep font sizetrapezium, how to calculate angles?Input/Output Nodes - Specification and Description LanguageAdjusting edge alignment and positioning of fitted nodetikz and pgfdeclareshape why the text is not at the center anchor?
Im trying to create a Work Breakdown structure with tikz. I would like to have
Instead I have the following:
Here's my code:
documentclass[tikz,border=10pt]standaloneusepackagetikz
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzstylemateria=[draw, text width=6.0em, text centered,
minimum height=1.5em]
tikzstyleetape = [materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners]
tikzstyletexto = [above, text width=6em, text centered]
tikzstylelinepart = [draw, thick, color=black!30, -latex', dashed]
tikzstyleline = [draw, thick, color=black!30, -latex']
tikzstyleur=[draw, text centered, minimum height=0.01em]
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-5.0,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(0.0,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
path [line] (p2.south) -- node [above] (p3);
path [line] (p3.south) -- node [above] (p4);
path [line] (p4.south) -- node [above] (p5);
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
´´´
tikz-pgf tikz-trees
New contributor
add a comment |
Im trying to create a Work Breakdown structure with tikz. I would like to have
Instead I have the following:
Here's my code:
documentclass[tikz,border=10pt]standaloneusepackagetikz
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzstylemateria=[draw, text width=6.0em, text centered,
minimum height=1.5em]
tikzstyleetape = [materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners]
tikzstyletexto = [above, text width=6em, text centered]
tikzstylelinepart = [draw, thick, color=black!30, -latex', dashed]
tikzstyleline = [draw, thick, color=black!30, -latex']
tikzstyleur=[draw, text centered, minimum height=0.01em]
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-5.0,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(0.0,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
path [line] (p2.south) -- node [above] (p3);
path [line] (p3.south) -- node [above] (p4);
path [line] (p4.south) -- node [above] (p5);
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
´´´
tikz-pgf tikz-trees
New contributor
add a comment |
Im trying to create a Work Breakdown structure with tikz. I would like to have
Instead I have the following:
Here's my code:
documentclass[tikz,border=10pt]standaloneusepackagetikz
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzstylemateria=[draw, text width=6.0em, text centered,
minimum height=1.5em]
tikzstyleetape = [materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners]
tikzstyletexto = [above, text width=6em, text centered]
tikzstylelinepart = [draw, thick, color=black!30, -latex', dashed]
tikzstyleline = [draw, thick, color=black!30, -latex']
tikzstyleur=[draw, text centered, minimum height=0.01em]
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-5.0,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(0.0,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
path [line] (p2.south) -- node [above] (p3);
path [line] (p3.south) -- node [above] (p4);
path [line] (p4.south) -- node [above] (p5);
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
´´´
tikz-pgf tikz-trees
New contributor
Im trying to create a Work Breakdown structure with tikz. I would like to have
Instead I have the following:
Here's my code:
documentclass[tikz,border=10pt]standaloneusepackagetikz
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzstylemateria=[draw, text width=6.0em, text centered,
minimum height=1.5em]
tikzstyleetape = [materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners]
tikzstyletexto = [above, text width=6em, text centered]
tikzstylelinepart = [draw, thick, color=black!30, -latex', dashed]
tikzstyleline = [draw, thick, color=black!30, -latex']
tikzstyleur=[draw, text centered, minimum height=0.01em]
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-5.0,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(0.0,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
path [line] (p2.south) -- node [above] (p3);
path [line] (p3.south) -- node [above] (p4);
path [line] (p4.south) -- node [above] (p5);
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
´´´
tikz-pgf tikz-trees
tikz-pgf tikz-trees
New contributor
New contributor
New contributor
asked 12 hours ago
L LewisL Lewis
182
182
New contributor
New contributor
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Welcome to TeX-SE! If your question is about a minimal damage modification of your code that produces something of that sort, here is a proposal:
documentclass[tikz,border=10pt]standalone
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
texto/.style=above, text width=6em, text centered,
linepart/.style=draw, thick, color=black!30, -latex', dashed,
line/.style=draw, thick, color=black!30, -latex',
ur/.style=draw, text centered, minimum height=0.01em
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-6.5,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(1,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
If you are asking about a cleaner code that achieves this output, the answer will be quite different. E.g. the following is already shorter and simpler IMHO.
documentclass[tikz,border=10pt]standalone
usetikzlibraryarrows,positioning
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
line/.style=draw, thick, color=black!30, -latex'
begindocument
begintikzpicture[scale=0.7,transform shape]
beginscope[nodes=etape,font=bfseries]
node (p1) Operating Items;
node[left=6.5cm of p1] (p2) Non-Operating Items;
node[below=5mm of p2,xshift=8mm] (p3) Interest;
node[below=5mm of p3] (p4) Profits and Losses;
node[below=5mm of p4] (p5) Subsidies;
node[below left=8mm and 1mm of p1.south] (p6) Direct Operating Costs;
node[below right=8mm and 1mm of p1.south] (p7) Indirect Operating Costs;
endscope
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
foreach X in 6,7
(pX.north);
endtikzpicture
enddocument
That was exactly what I was searching for
– L Lewis
12 hours ago
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
);
);
L Lewis is a new contributor. Be nice, and check out our Code of Conduct.
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%2f483701%2fwork-breakdown-with-tikz%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Welcome to TeX-SE! If your question is about a minimal damage modification of your code that produces something of that sort, here is a proposal:
documentclass[tikz,border=10pt]standalone
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
texto/.style=above, text width=6em, text centered,
linepart/.style=draw, thick, color=black!30, -latex', dashed,
line/.style=draw, thick, color=black!30, -latex',
ur/.style=draw, text centered, minimum height=0.01em
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-6.5,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(1,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
If you are asking about a cleaner code that achieves this output, the answer will be quite different. E.g. the following is already shorter and simpler IMHO.
documentclass[tikz,border=10pt]standalone
usetikzlibraryarrows,positioning
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
line/.style=draw, thick, color=black!30, -latex'
begindocument
begintikzpicture[scale=0.7,transform shape]
beginscope[nodes=etape,font=bfseries]
node (p1) Operating Items;
node[left=6.5cm of p1] (p2) Non-Operating Items;
node[below=5mm of p2,xshift=8mm] (p3) Interest;
node[below=5mm of p3] (p4) Profits and Losses;
node[below=5mm of p4] (p5) Subsidies;
node[below left=8mm and 1mm of p1.south] (p6) Direct Operating Costs;
node[below right=8mm and 1mm of p1.south] (p7) Indirect Operating Costs;
endscope
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
foreach X in 6,7
(pX.north);
endtikzpicture
enddocument
That was exactly what I was searching for
– L Lewis
12 hours ago
add a comment |
Welcome to TeX-SE! If your question is about a minimal damage modification of your code that produces something of that sort, here is a proposal:
documentclass[tikz,border=10pt]standalone
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
texto/.style=above, text width=6em, text centered,
linepart/.style=draw, thick, color=black!30, -latex', dashed,
line/.style=draw, thick, color=black!30, -latex',
ur/.style=draw, text centered, minimum height=0.01em
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-6.5,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(1,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
If you are asking about a cleaner code that achieves this output, the answer will be quite different. E.g. the following is already shorter and simpler IMHO.
documentclass[tikz,border=10pt]standalone
usetikzlibraryarrows,positioning
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
line/.style=draw, thick, color=black!30, -latex'
begindocument
begintikzpicture[scale=0.7,transform shape]
beginscope[nodes=etape,font=bfseries]
node (p1) Operating Items;
node[left=6.5cm of p1] (p2) Non-Operating Items;
node[below=5mm of p2,xshift=8mm] (p3) Interest;
node[below=5mm of p3] (p4) Profits and Losses;
node[below=5mm of p4] (p5) Subsidies;
node[below left=8mm and 1mm of p1.south] (p6) Direct Operating Costs;
node[below right=8mm and 1mm of p1.south] (p7) Indirect Operating Costs;
endscope
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
foreach X in 6,7
(pX.north);
endtikzpicture
enddocument
That was exactly what I was searching for
– L Lewis
12 hours ago
add a comment |
Welcome to TeX-SE! If your question is about a minimal damage modification of your code that produces something of that sort, here is a proposal:
documentclass[tikz,border=10pt]standalone
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
texto/.style=above, text width=6em, text centered,
linepart/.style=draw, thick, color=black!30, -latex', dashed,
line/.style=draw, thick, color=black!30, -latex',
ur/.style=draw, text centered, minimum height=0.01em
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-6.5,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(1,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
If you are asking about a cleaner code that achieves this output, the answer will be quite different. E.g. the following is already shorter and simpler IMHO.
documentclass[tikz,border=10pt]standalone
usetikzlibraryarrows,positioning
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
line/.style=draw, thick, color=black!30, -latex'
begindocument
begintikzpicture[scale=0.7,transform shape]
beginscope[nodes=etape,font=bfseries]
node (p1) Operating Items;
node[left=6.5cm of p1] (p2) Non-Operating Items;
node[below=5mm of p2,xshift=8mm] (p3) Interest;
node[below=5mm of p3] (p4) Profits and Losses;
node[below=5mm of p4] (p5) Subsidies;
node[below left=8mm and 1mm of p1.south] (p6) Direct Operating Costs;
node[below right=8mm and 1mm of p1.south] (p7) Indirect Operating Costs;
endscope
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
foreach X in 6,7
(pX.north);
endtikzpicture
enddocument
Welcome to TeX-SE! If your question is about a minimal damage modification of your code that produces something of that sort, here is a proposal:
documentclass[tikz,border=10pt]standalone
usetikzlibraryshadows,arrows,positioning
usepackagecolor,soul %For highlighting
% Define the layers to draw the diagram
pgfdeclarelayerbackground
pgfdeclarelayerforeground
pgfsetlayersbackground,main,foreground
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
texto/.style=above, text width=6em, text centered,
linepart/.style=draw, thick, color=black!30, -latex', dashed,
line/.style=draw, thick, color=black!30, -latex',
ur/.style=draw, text centered, minimum height=0.01em
% Define distances for bordering
newcommandblockdist1.3
newcommandedgedist1.5
newcommandetape[2]node (p#1) [etape]
#2
newcommandtransreceptor[3]%
path [linepart] (#1.east) -- node [above]
scriptsize #2 (#3);
begindocument
begintikzpicture[scale=0.7,transform shape]
% Draw diagram elements
path etape1textbfOperating Items;
path (p1.west)+(-6.5,0.0)etape2textbfNon-Operating Items;
path (p2.south)+(1,-1.0)etape3textbfInterest;
path (p3.south)+(0.0,-1.0)etape4textbfProfits and Losses;
path (p4.south)+(0.0,-1.0)etape5textbfSubsidies;
path (p1.south)+(2.5,-1.0)etape6textbfDirect Operating Costs;
path (p1.south)+(-2.5,-1.0)etape7textbfIndirect Operating Costs;
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
path [line] (p1.south) -- +(0.0,-0.2) -- +(+2.5,-0.2)
-- node [above, midway] (p6);
path [line] (p1.south) -- +(0.0,-0.2) -- +(-2.5,-0.2)
-- node [above, midway] (p7);
endtikzpicture
enddocument
If you are asking about a cleaner code that achieves this output, the answer will be quite different. E.g. the following is already shorter and simpler IMHO.
documentclass[tikz,border=10pt]standalone
usetikzlibraryarrows,positioning
% Define block styles
tikzsetmateria/.style=draw, text width=6.0em, text centered,
minimum height=1.5em,
etape/.style=materia, text width=12em, minimum width=10em,
minimum height=3em, rounded corners,
line/.style=draw, thick, color=black!30, -latex'
begindocument
begintikzpicture[scale=0.7,transform shape]
beginscope[nodes=etape,font=bfseries]
node (p1) Operating Items;
node[left=6.5cm of p1] (p2) Non-Operating Items;
node[below=5mm of p2,xshift=8mm] (p3) Interest;
node[below=5mm of p3] (p4) Profits and Losses;
node[below=5mm of p4] (p5) Subsidies;
node[below left=8mm and 1mm of p1.south] (p6) Direct Operating Costs;
node[below right=8mm and 1mm of p1.south] (p7) Indirect Operating Costs;
endscope
% Draw arrows between elements
foreach X in 3,4,5
path [line] (p2.-165)
foreach X in 6,7
(pX.north);
endtikzpicture
enddocument
edited 11 hours ago
answered 12 hours ago
marmotmarmot
116k5147277
116k5147277
That was exactly what I was searching for
– L Lewis
12 hours ago
add a comment |
That was exactly what I was searching for
– L Lewis
12 hours ago
That was exactly what I was searching for
– L Lewis
12 hours ago
That was exactly what I was searching for
– L Lewis
12 hours ago
add a comment |
L Lewis is a new contributor. Be nice, and check out our Code of Conduct.
L Lewis is a new contributor. Be nice, and check out our Code of Conduct.
L Lewis is a new contributor. Be nice, and check out our Code of Conduct.
L Lewis is a new contributor. Be nice, and check out our Code of Conduct.
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%2f483701%2fwork-breakdown-with-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