createPlot(mytree)方法实现。

其中myTree是一个字典,调用retrieveTree(0)可以获得一个字典的样式。

Last login: Thu Feb 23 19:07:53 on ttys000
B000000060143:~ zhanghao44$ ls
4 Desktop IdeaProjects Music PycharmProjects
4a Documents Library Pictures
CLionProjects Downloads Movies Public
B000000060143:~ zhanghao44$ cd Desktop/
B000000060143:Desktop zhanghao44$ ls
help
machinelearninginaction
ps-dsp
终端
备份
屏幕快照 2017-02-22 下午7.36.56.png
屏幕快照 2017-02-22 下午7.41.27.png
屏幕快照 2017-02-22 下午7.45.55.png
张浩出勤统计.xlsx
B000000060143:Desktop zhanghao44$ cd machinelearninginaction/
B000000060143:machinelearninginaction zhanghao44$ ls
Ch02 Ch05 Ch08 Ch11 Ch14
Ch03 Ch06 Ch09 Ch12 Ch15
Ch04 Ch07 Ch10 Ch13 README.rst
B000000060143:machinelearninginaction zhanghao44$ cd Ch03
B000000060143:Ch03 zhanghao44$ ls
classifierStorage.txt treePlotter.py trees.py
lenses.txt treePlotter.pyc trees.pyc
B000000060143:Ch03 zhanghao44$ vi trees.py
B000000060143:Ch03 zhanghao44$ vi treePlotter.py B000000060143:Ch03 zhanghao44$ vi treePlotter.py plotTree.totalD = float(getTreeDepth(inTree))
plotTree.xOff = -0.5/plotTree.totalW; plotTree.yOff = 1.0;
plotTree(inTree, (0.5,1.0), '')
plt.show() def createPlot1():
fig = plt.figure(1, facecolor='white')
fig.clf()
createPlot.ax1 = plt.subplot(111, frameon=False) #ticks for demo puropses
plotNode('a decision node', (0.5, 0.1), (0.1, 0.5), decisionNode)
plotNode('a leaf node', (0.8, 0.1), (0.3, 0.8), leafNode)
plt.show() def retrieveTree(i):
listOfTrees =[{'no surfacing': {0: 'no', 1: {'flippers': {0: 'no', 1: 'yes'}}}},
{'no surfacing': {0: 'no', 1: {'flippers': {0: {'head': {0: 'no', 1: 'yes'}}, 1: 'no'}}}}
]
return listOfTrees[i] #createPlot(thisTree)

python 由递归的dict构建树的画图代码的更多相关文章

  1. Python的递归

    递归 是指函数/过程/子程序在运行过程序中直接或间接调用自身而产生的重入现象.在计算机编程里,递归指的是一个过程:函数不断引用自身,直到引用的对象已知.使用递归解决问题,思路清晰,代码少.但是在主流高 ...

  2. Python基础——字典(dict)

    由键-值对构建的集合. 创建 dic1={} type(dic1) dic2=dict() type(dic2) 初始化 dic2={'hello':123,'world':456,'python': ...

  3. Python中list,tuple,dict,set的区别和用法

    Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, tuple, dict, set.这里对他们进行一个简明的总结. List ...

  4. 为 Python Server Pages 和 Oracle 构建快速 Web 开发环境。

    为 Python Server Pages 和 Oracle 构建快速 Web 开发环境. - 在水一方 - 博客频道 - CSDN.NET 为 Python Server Pages 和 Oracl ...

  5. python基础之字典dict和集合set

    作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...

  6. Python中list,tuple,dict,set的区别和用法(转)

    原文地址:http://www.cnblogs.com/soaringEveryday/p/5044007.html Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个 ...

  7. 关于python最大递归深度 - 998

    今天LeetCode的时候暴力求解233 问题: 给定一个整数 n,计算所有小于等于 n 的非负数中数字1出现的个数. 例如: 给定 n = 13, 返回 6,因为数字1出现在下数中出现:1,10,1 ...

  8. python入门14 字典dict

    字典dict是无序的key:value格式的数据序列 #coding:utf-8 #/usr/bin/python """ 2018-11-11 dinghanhua 字 ...

  9. Python的递归深度

    RuntimeError: maximum recursion depth exceeded while calling a Python object 大意是调用 Python 对象时超出最大深度限 ...

随机推荐

  1. python spark wingide

  2. Git基础篇

    对于Git的一些基础了解,安装,里面的一些名词,这里就不做介绍了.主要记录怎么使用GIt. 本篇介绍: 配置个人信息        生成本地仓库并与远程库相连        添加SSH秘钥       ...

  3. AngularJS 指循环数组对象

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  4. jQuery性能优化和技巧

    jQuery性能优化 ①使用最新版本的jQuery类库 ②使用合适的选择器 ③缓存对象 ④循环时的DOM操作 ⑤数组方式使用jQuery对象 ⑥事件代理 ⑦将你的代码转化成jQuery插件 ⑧使用jo ...

  5. CentOS 7 下 jdk8 安装教程

    方法一: 一.下载   官网下载地址   下载需要确认当前系统是32位还是64位,可通过命令查询:   sudo uname --m   根据查询结果下载对应的jdk版本(如):   i686 //表 ...

  6. jquery 筛选元素 (2)

    .add() 创建一个新的对象,元素添加到匹配的元素集合中. .add(selector) selector 一个字符串表示的选择器表达式.找到更多的元素添加到匹配的元素集合. $("p&q ...

  7. 浅谈MySQL字符集

      Preface       MySQL use character set & collation to organize the different charater.It provid ...

  8. 使用Jmeter性能测试,读取csv文件时的乱码问题

    读取csv参数乱码问题 发送请求时参数通过CSV文件读取,发送请求后显示错误,把获取的参数通过在线urlencode转码器转码后发现是乱码.打开csv设值,编码格式选择的是UTF-8,打开参数文件后发 ...

  9. struts2入门第一天----------配置环境

    放假之后有空就开始走上了三大框架的学习.第一个选择的框架是struts2.首先第一步当然是环境的配置.去apache官网把struts2下载下来.然后在自己的开发工具下创建一个web项目.在lib文件 ...

  10. vue笔记v-if

    如果ite.type=='培训',显示第一个img, 如果ite.type=='会议',显示第二个img