Matplotlib注解

import matplotlib.pyplot as plt

#定义文本框和箭头模式,dict和字典是一样的
# 定义决策树决策结果的属性,用字典来定义  
# 下面的字典定义也可写作 decisionNode={boxstyle:'sawtooth',fc:'0.8'}  
# boxstyle为文本框的类型,sawtooth是锯齿形,fc是边框线粗细  
decisionNode = dict(boxstyle="sawtooth", fc="0.8")
leafNode = dict(boxstyle="round4", fc="0.8")
arrow_args = dict(arrowstyle="<-")

#绘制带箭头的注解
def plotNode(nodeTxt, centerPt, parentPt, nodeType):
    '''
    Function:   绘制带箭头的注解
    Args:       nodeTxt:文本注解
                 centerPt:箭头终点坐标
                 parentPt:箭头起始坐标
                 nodeType:文本框类型
    annotate是关于一个数据点的文本 
    '''
    #在全局变量createPlot.ax1中绘图
    createPlot.ax1.annotate(nodeTxt, xy=parentPt, xycoords='axes fraction',\
        xytext=centerPt, textcoords='axes fraction', va="center", ha="center",\
        bbox=nodeType, arrowprops=arrow_args)

def createPlot():
    #创建一个新图形
    fig = plt.figure(1, facecolor='white')
    #清空绘图区
    fig.clf()
    #给全局变量createPlot.ax1赋值,subplot为定义了一个绘图
    #111表示figure中的图有1行1列,即1个,最后的1代表第一个图
    #frameon表示是否绘制坐标轴矩形 
    createPlot.ax1 = plt.subplot(111, frameon=False)
    #绘制第一个文本注解
    plotNode('决策节点', (0.5, 0.1), (0.1, 0.5), decisionNode)
    #绘制第二个文本注解
    plotNode('叶节点', (0.8, 0.1), (0.3, 0.8), leafNode)
    #显示最终绘制结果
    plt.show()

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值