Strange error for passing parameter to forestset to draw tree











up vote
4
down vote

favorite












I am trying to draw a simple probability tree, where the probabilites could sometimes be fraction or decimals., this means, I will have to adjust the spacing. So I tried the below code. This produces tree but label gone, and error thrown.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style 3 args={
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased, my edge label={above}{xshift=-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


Output:
enter image description here



Error:
enter image description here










share|improve this question
























  • Might be useful if you also cite the error
    – daleif
    2 days ago










  • I have added the screenshot
    – Paari Vendhan
    2 days ago















up vote
4
down vote

favorite












I am trying to draw a simple probability tree, where the probabilites could sometimes be fraction or decimals., this means, I will have to adjust the spacing. So I tried the below code. This produces tree but label gone, and error thrown.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style 3 args={
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased, my edge label={above}{xshift=-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


Output:
enter image description here



Error:
enter image description here










share|improve this question
























  • Might be useful if you also cite the error
    – daleif
    2 days ago










  • I have added the screenshot
    – Paari Vendhan
    2 days ago













up vote
4
down vote

favorite









up vote
4
down vote

favorite











I am trying to draw a simple probability tree, where the probabilites could sometimes be fraction or decimals., this means, I will have to adjust the spacing. So I tried the below code. This produces tree but label gone, and error thrown.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style 3 args={
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased, my edge label={above}{xshift=-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


Output:
enter image description here



Error:
enter image description here










share|improve this question















I am trying to draw a simple probability tree, where the probabilites could sometimes be fraction or decimals., this means, I will have to adjust the spacing. So I tried the below code. This produces tree but label gone, and error thrown.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style 3 args={
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased, my edge label={above}{xshift=-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


Output:
enter image description here



Error:
enter image description here







tikz-pgf tikz-styles forest arguments






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 2 days ago









Bernard

162k767192




162k767192










asked 2 days ago









Paari Vendhan

3287




3287












  • Might be useful if you also cite the error
    – daleif
    2 days ago










  • I have added the screenshot
    – Paari Vendhan
    2 days ago


















  • Might be useful if you also cite the error
    – daleif
    2 days ago










  • I have added the screenshot
    – Paari Vendhan
    2 days ago
















Might be useful if you also cite the error
– daleif
2 days ago




Might be useful if you also cite the error
– daleif
2 days ago












I have added the screenshot
– Paari Vendhan
2 days ago




I have added the screenshot
– Paari Vendhan
2 days ago










1 Answer
1






active

oldest

votes

















up vote
5
down vote



accepted










There are actually 2 issues.





  1. style 3 args does not exist, use style n args={3}{... instead.

  2. You define for the 2nd argument xshift=#2 but add one more xshift when you are saying my edge label={above}{xshift=-2mm}{0.002}.


Working code:



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={3}{
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above}{-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here



Simpler code: pgfkeys already accept comma-separated arguments, which is illustrated in my edge label={above,xshift=-3mm}{0.002}. And instead the xshift you my just use above left or below left etc., as in my edge label={below left}{0.998}.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={2}{
edge label={node[midway, font=sffamilyscriptsize,#1]{#2}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above,xshift=-3mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease,my edge label={below left}{0.998}
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here






share|improve this answer























  • Instead of above and a negative xshift you may also try above left.
    – marmot
    2 days ago










  • thanks marmot :) any way I could make that optional also, so I need not always give that some default value?
    – Paari Vendhan
    2 days ago












  • @PaariVendhan Yes, of course, with pgfkeys. (Sorry, I was hibernating.) What do you want to make default? (Will decouple now again for one hour.)
    – marmot
    2 days ago












  • No, not default, just optional (so even if i do not pass anything, nothing happens foreg, what happens if i did not send xshift value - result should be if what if i did not use xshift in the style)
    – Paari Vendhan
    2 days ago






  • 1




    @PaariVendhan nodes already allow for optional keys, so IMHO you only need 2 arguments, not three. I illustrated this in another example.
    – marmot
    2 days ago











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',
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
});


}
});














 

draft saved


draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f461558%2fstrange-error-for-passing-parameter-to-forestset-to-draw-tree%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








up vote
5
down vote



accepted










There are actually 2 issues.





  1. style 3 args does not exist, use style n args={3}{... instead.

  2. You define for the 2nd argument xshift=#2 but add one more xshift when you are saying my edge label={above}{xshift=-2mm}{0.002}.


Working code:



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={3}{
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above}{-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here



Simpler code: pgfkeys already accept comma-separated arguments, which is illustrated in my edge label={above,xshift=-3mm}{0.002}. And instead the xshift you my just use above left or below left etc., as in my edge label={below left}{0.998}.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={2}{
edge label={node[midway, font=sffamilyscriptsize,#1]{#2}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above,xshift=-3mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease,my edge label={below left}{0.998}
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here






share|improve this answer























  • Instead of above and a negative xshift you may also try above left.
    – marmot
    2 days ago










  • thanks marmot :) any way I could make that optional also, so I need not always give that some default value?
    – Paari Vendhan
    2 days ago












  • @PaariVendhan Yes, of course, with pgfkeys. (Sorry, I was hibernating.) What do you want to make default? (Will decouple now again for one hour.)
    – marmot
    2 days ago












  • No, not default, just optional (so even if i do not pass anything, nothing happens foreg, what happens if i did not send xshift value - result should be if what if i did not use xshift in the style)
    – Paari Vendhan
    2 days ago






  • 1




    @PaariVendhan nodes already allow for optional keys, so IMHO you only need 2 arguments, not three. I illustrated this in another example.
    – marmot
    2 days ago















up vote
5
down vote



accepted










There are actually 2 issues.





  1. style 3 args does not exist, use style n args={3}{... instead.

  2. You define for the 2nd argument xshift=#2 but add one more xshift when you are saying my edge label={above}{xshift=-2mm}{0.002}.


Working code:



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={3}{
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above}{-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here



Simpler code: pgfkeys already accept comma-separated arguments, which is illustrated in my edge label={above,xshift=-3mm}{0.002}. And instead the xshift you my just use above left or below left etc., as in my edge label={below left}{0.998}.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={2}{
edge label={node[midway, font=sffamilyscriptsize,#1]{#2}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above,xshift=-3mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease,my edge label={below left}{0.998}
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here






share|improve this answer























  • Instead of above and a negative xshift you may also try above left.
    – marmot
    2 days ago










  • thanks marmot :) any way I could make that optional also, so I need not always give that some default value?
    – Paari Vendhan
    2 days ago












  • @PaariVendhan Yes, of course, with pgfkeys. (Sorry, I was hibernating.) What do you want to make default? (Will decouple now again for one hour.)
    – marmot
    2 days ago












  • No, not default, just optional (so even if i do not pass anything, nothing happens foreg, what happens if i did not send xshift value - result should be if what if i did not use xshift in the style)
    – Paari Vendhan
    2 days ago






  • 1




    @PaariVendhan nodes already allow for optional keys, so IMHO you only need 2 arguments, not three. I illustrated this in another example.
    – marmot
    2 days ago













up vote
5
down vote



accepted







up vote
5
down vote



accepted






There are actually 2 issues.





  1. style 3 args does not exist, use style n args={3}{... instead.

  2. You define for the 2nd argument xshift=#2 but add one more xshift when you are saying my edge label={above}{xshift=-2mm}{0.002}.


Working code:



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={3}{
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above}{-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here



Simpler code: pgfkeys already accept comma-separated arguments, which is illustrated in my edge label={above,xshift=-3mm}{0.002}. And instead the xshift you my just use above left or below left etc., as in my edge label={below left}{0.998}.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={2}{
edge label={node[midway, font=sffamilyscriptsize,#1]{#2}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above,xshift=-3mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease,my edge label={below left}{0.998}
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here






share|improve this answer














There are actually 2 issues.





  1. style 3 args does not exist, use style n args={3}{... instead.

  2. You define for the 2nd argument xshift=#2 but add one more xshift when you are saying my edge label={above}{xshift=-2mm}{0.002}.


Working code:



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={3}{
edge label={node[midway, font=sffamilyscriptsize, #1,xshift=#2]{#3}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above}{-2mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here



Simpler code: pgfkeys already accept comma-separated arguments, which is illustrated in my edge label={above,xshift=-3mm}{0.002}. And instead the xshift you my just use above left or below left etc., as in my edge label={below left}{0.998}.



documentclass{article}
usepackage[utf8]{inputenc}

usepackage[linguistics]{forest}
usepackage{philex}


forestset{
my edge label/.style n args={2}{
edge label={node[midway, font=sffamilyscriptsize,#1]{#2}},
},
}

title{Problem customizing forest tree}
author{parthi292929 }
date{November 2018}



begin{document}

maketitle

section{Introduction}

scalebox{1.2}{
begin{forest}
for tree={grow'=east}
[0
[Diseased,my edge label={above,xshift=-3mm}{0.002}
[Positive
]
[Negative(FN)
]
]
[No Disease,my edge label={below left}{0.998}
[Positive
]
[Negative
]
]
]
]
end{forest}
}


end{document}


enter image description here







share|improve this answer














share|improve this answer



share|improve this answer








edited 2 days ago

























answered 2 days ago









marmot

78.4k487166




78.4k487166












  • Instead of above and a negative xshift you may also try above left.
    – marmot
    2 days ago










  • thanks marmot :) any way I could make that optional also, so I need not always give that some default value?
    – Paari Vendhan
    2 days ago












  • @PaariVendhan Yes, of course, with pgfkeys. (Sorry, I was hibernating.) What do you want to make default? (Will decouple now again for one hour.)
    – marmot
    2 days ago












  • No, not default, just optional (so even if i do not pass anything, nothing happens foreg, what happens if i did not send xshift value - result should be if what if i did not use xshift in the style)
    – Paari Vendhan
    2 days ago






  • 1




    @PaariVendhan nodes already allow for optional keys, so IMHO you only need 2 arguments, not three. I illustrated this in another example.
    – marmot
    2 days ago


















  • Instead of above and a negative xshift you may also try above left.
    – marmot
    2 days ago










  • thanks marmot :) any way I could make that optional also, so I need not always give that some default value?
    – Paari Vendhan
    2 days ago












  • @PaariVendhan Yes, of course, with pgfkeys. (Sorry, I was hibernating.) What do you want to make default? (Will decouple now again for one hour.)
    – marmot
    2 days ago












  • No, not default, just optional (so even if i do not pass anything, nothing happens foreg, what happens if i did not send xshift value - result should be if what if i did not use xshift in the style)
    – Paari Vendhan
    2 days ago






  • 1




    @PaariVendhan nodes already allow for optional keys, so IMHO you only need 2 arguments, not three. I illustrated this in another example.
    – marmot
    2 days ago
















Instead of above and a negative xshift you may also try above left.
– marmot
2 days ago




Instead of above and a negative xshift you may also try above left.
– marmot
2 days ago












thanks marmot :) any way I could make that optional also, so I need not always give that some default value?
– Paari Vendhan
2 days ago






thanks marmot :) any way I could make that optional also, so I need not always give that some default value?
– Paari Vendhan
2 days ago














@PaariVendhan Yes, of course, with pgfkeys. (Sorry, I was hibernating.) What do you want to make default? (Will decouple now again for one hour.)
– marmot
2 days ago






@PaariVendhan Yes, of course, with pgfkeys. (Sorry, I was hibernating.) What do you want to make default? (Will decouple now again for one hour.)
– marmot
2 days ago














No, not default, just optional (so even if i do not pass anything, nothing happens foreg, what happens if i did not send xshift value - result should be if what if i did not use xshift in the style)
– Paari Vendhan
2 days ago




No, not default, just optional (so even if i do not pass anything, nothing happens foreg, what happens if i did not send xshift value - result should be if what if i did not use xshift in the style)
– Paari Vendhan
2 days ago




1




1




@PaariVendhan nodes already allow for optional keys, so IMHO you only need 2 arguments, not three. I illustrated this in another example.
– marmot
2 days ago




@PaariVendhan nodes already allow for optional keys, so IMHO you only need 2 arguments, not three. I illustrated this in another example.
– marmot
2 days ago


















 

draft saved


draft discarded



















































 


draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f461558%2fstrange-error-for-passing-parameter-to-forestset-to-draw-tree%23new-answer', 'question_page');
}
);

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







Popular posts from this blog

"Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

Alcedinidae

Origin of the phrase “under your belt”?