Skip to content

Commit 82865ba

Browse files
authored
Merge pull request #162 from kayjan/better-sphinx-examples
Changed: Example for sphinx examples for merging trees and weighted t…
2 parents a6fbf84 + 4660e02 commit 82865ba

File tree

3 files changed

+31
-26
lines changed

3 files changed

+31
-26
lines changed

assets/sphinx/weighted_tree.png

6 Bytes
Loading

docs/source/others/merging_trees.md

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -7,42 +7,44 @@ Children of node `b` from both trees are retained as long as `merge_children=Tru
77
If only children of other tree is desired, set `overriding=True` instead.
88

99
```python
10-
from bigtree import Node, print_tree, copy_nodes_from_tree_to_tree
10+
from bigtree import Node, copy_nodes_from_tree_to_tree
1111

1212
# Construct trees
13-
root1 = Node("a")
14-
b1 = Node("b", parent=root1)
15-
c1 = Node("c", parent=root1)
16-
d1 = Node("d", parent=b1)
13+
downloads_folder = Node("Downloads")
14+
pictures_folder = Node("Pictures", parent=downloads_folder)
15+
photo1 = Node("photo1.jpg", parent=pictures_folder)
16+
file1 = Node("file1.doc", parent=downloads_folder)
1717

18-
b2 = Node("b")
19-
e2 = Node("e", parent=b2)
18+
documents_folder = Node("Documents")
19+
pictures_folder = Node("Pictures", parent=documents_folder)
20+
photo2 = Node("photo2.jpg", parent=pictures_folder)
2021

2122
# Validate tree structure
22-
print_tree(root1)
23-
# a
24-
# ├── b
25-
# │ └── d
26-
# └── c
23+
downloads_folder.show()
24+
# Downloads
25+
# ├── Pictures
26+
# │ └── photo1.jpg
27+
# └── file1.doc
2728

28-
print_tree(b2)
29-
# b
30-
# └── e
29+
documents_folder.show()
30+
# Documents
31+
# └── Pictures
32+
# └── photo2.jpg
3133

3234
# Merge trees
3335
copy_nodes_from_tree_to_tree(
34-
from_tree=b2,
35-
to_tree=root1,
36-
from_paths=["b"],
37-
to_paths=["a/b"],
36+
from_tree=documents_folder,
37+
to_tree=downloads_folder,
38+
from_paths=["Documents/Pictures"],
39+
to_paths=["Downloads/Pictures"],
3840
merge_children=True, # set overriding=True to override existing children
3941
)
4042

4143
# Validate tree structure
42-
print_tree(root1)
43-
# a
44-
# ├── b
45-
# │ ├── d
46-
# │ └── e
47-
# └── c
44+
downloads_folder.show()
45+
# Downloads
46+
# ├── Pictures
47+
# │ ├── photo1.jpg
48+
# │ └── photo2.jpg
49+
# └── file1.doc
4850
```

docs/source/others/weighted_trees.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,10 @@ class WeightedNode(Node):
1515

1616
@property
1717
def edge_attr(self):
18-
return {"label": self.weight}
18+
"""Edge attribute for pydot diagram
19+
Label for edge label, penwidth for edge width
20+
"""
21+
return {"label": self.weight, "penwidth": self.weight}
1922

2023
# Construct weighted tree
2124
root = WeightedNode("a")

0 commit comments

Comments
 (0)