# Tag Info

## New answers tagged trees

6

Another solution using forest package. The code for nice empty nodes is adapted from example 81 in forest documentation. \documentclass[tikz, border=3mm]{standalone} \usepackage{forest} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document} \forestset{ nice empty nodes/.style={ for tree={calign=fixed edge angles}, delay={where ...

5

You are supposed to put the edge from parent operation at the end of the corresponding child path declaration, like in the following : \begin{tikzpicture}[-,>=stealth',level/.style={sibling distance = 3cm, level distance = 1.5cm}, leaf/.style={circle, draw}, label/.style={red},edge from parent path={(\tikzparentnode.south) -- (\tikzchildnode)}] ...

5

I'd like to propose here an alternative, using the ground symbol from the circuits.ee.IEC library and using the powerful forest package to draw the tree: The code: \documentclass{llncs} \usepackage{llncsdoc} \usepackage{tikz} \usetikzlibrary{shapes.geometric,arrows,fit,matrix,positioning,pgfplots.groupplots,circuits.ee.IEC} \usepackage{forest} \tikzset{ ...

6

After one hour investigation, removing -> from tikzpicture environment to path command will solve the problem. Code \documentclass{llncs} \usepackage{llncsdoc} \usepackage{tikz} \usepackage{pgfplots} \pgfplotsset{compat=newest} \usetikzlibrary{shapes.geometric,arrows,fit,matrix,positioning,pgfplots.groupplots} \usepackage{circuitikz} \begin{document} ...

3

The first thing you need to understand for TiKZ nodes is that minimum size means exactly this minimum, i.e., if node contents needs a larger size, TiKZ will take it. Here you have an example with your treenode and subtree (I've replaced isosceles triangle by an equilater one with regular polygon). As you can see, if node contents is empty, minimum size is ...

3

With the OP's current setting the circles and triangles are of comparable size as long as the text is not written into the subtree nodes. So a possible solution is to write the text later after the drawing is done. This is shown by the last 2 lines of codes. To have the arrows pointing to the tip of a triangle, the following line is added to the ...

2

To attach the arrows to the top of the subtrees then saychild[child anchor=apex]

5

As I said in my comment, forest is not really designed (it seems to me) for this kind of diagram. At a given level within a given subtree, the direction of growth is, well, the direction of growth. You cannot specify one direction for one child and a different direction for another. So to draw something of the kind I believe you want, you need to fake it. ...

1

It uses your idea with a phantom node and the name argument: \documentclass{article} \usepackage{forest} \forestset{ sn edges/.style={for tree={parent anchor=south, child anchor=north,align=center,base=bottom,where n children=0{tier=word}{}}}, background tree/.style={for tree={text opacity=0.2,draw opacity=0.2,edge={draw opacity=0.2}}} } \begin{document} ...

2

Add an empty node and change the shape for empty nodes to coordinate using empty nodes/.style={ delay={where content={}{shape=coordinate,for parent={for children={anchor=north}}}{}}} } Code: \documentclass{article} \usepackage{forest} \forestset{ sn edges/.style={for tree={parent anchor=south, child anchor=north,align=center,base=bottom,where n ...

4

Next time you ask a question, please remember to make an effort yourself first and post what you have managed even if it is not much. At the very least, you should provide the structure of the document (\documentclass ... \end{document}) and the contents of the tree nodes so people do not have to start from scratch in order to help you. I happen to be ...

Top 50 recent answers are included