Co-authored-by: Guillaume Lemaitre <g.lemaitre58@gmail.com>
Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
Co-authored-by: Thomas J. Fan <thomasjpfan@gmail.com>
Breiman, Friedman, Ohlsen, Stone use a T with a tilde to denote the terminal nodes of a tree. A simple T would imply we are counting the nodes in the whole tree.
Co-authored-by: Juan Carlos Alfaro Jiménez <JuanCarlos.Alfaro@uclm.es>
Co-authored-by: Nicolas Hug <contact@nicolas-hug.com>
Co-authored-by: thomas.wesselink@ing.com <thomas.wesselink@ing.com>
* add reingold tillford tree layout algorithm
* add first silly implementation of matplotlib based plotting for trees
* object oriented design for export_graphviz so it can be extended
* add class for mlp export
* add colors
* separately scale x and y, add arrowheads, fix strings
* implement max_depth
* don't use alpha for coloring because it makes boxes transparent
* remove unused variables
* vertical center of boxes
* fix/simplify newline trimming
* somewhere in the middle of stuff
trying to get rid of scalex, scaley
* remove "find_longest_child" for now, fix tests
* make scalex and scaley internal, and ax local.
render everything once to get the bbox sizes, then again to actually plot it with known extents.
* add some margin to the max bbox width
* add _BaseTreeExporter baseclass
* add docstring to plot_tree
* use data coordinates so we can put the plot in a subplot, remove some hacks.
* remove scalex, scaley, add automatic font size
* use rendered stuff for setting limits (well nearly there)
* import plot_tree into tree module
* set limits before font size adjustment?
* add tree plotting via matplotlib to iris example and to docs
* pep8 fix
* skip doctest on plot_tree because matplotlib is not installed on all CI machines
* redo everything in axis pixel coordinates
re-introduce scalex, scaley
add max_extents to tree to get tree size before plotting
* fix max-depth
parent node positioning and don't consider deep nodes in layouting
* consider height in fontsize computation
in case someone gave us a very flat figure
* fix error when max_depth is None
* add docstring for tree plotting fontsize
* starting on jnothman's review
* renaming fixes
* whatsnew for tree plotting
* clear axes prior to doing anything.
* fix doctests
* skip matplotlib doctest
* trying to debug circle failure
* trying to show full traceback
* more print debugging
* remove debugging crud
* hack around matplotlib <1.5 issues
* copy bbox args because old matplotlib is weird.
* pep8 fixes
* add explicit boxstyle
* more pep8
* even more pep8
* add comment about matplotlib version requirement
* remove redundant file
* add whatsnew entry that the merge lost
* fix merge issue
* more merge issues
* whitespace ...
* remove doctest skip to see what's happening
* added some simple invariance tests buchheim function
* refactor
___init__ into superclass
* added some tests of plot_tree
* put skip back in, fix typo, fix versionadded number
* remove unused parameters special_characters and parallel_leaves from mpl plotting
* rename tests to test_reingold_tilford
* added license header from pymag-trees repo
* remove duplicate test file.
* docs: fix broken and redirect links
see #7000
* docs: fix links
see #7000
* docs: merge with master
* docs: fix fnrs and tinyclues logo links
* docs: fix link reference in text
* docs: fix typo
* docs: added back in metaoptimize-qa paragraph
* docs: update language for defunct site
* docs: update stackexchange section
* docs: remove defunct site, move quora to top
* docs: remove defunct link and rearrange links