zoukankan      html  css  js  c++  java
  • matplotlib注解-【老鱼学matplotlib】

    本节讲述在图片中添加注解。
    直接上代码:

    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt
    
    # 生成x轴上的数据:从-3到3,总共有50个点
    x = np.linspace(-1, 1, 50)
    # 定义一个线性方程
    y1 = 2 * x + 1
    # 定义一个二次方程
    y2 = x ** 2
    # 绘制红色的线宽为1虚线的线条,注意这里p1后面有个逗号
    plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--', label="y1")
    plt.plot(x, y2, label="y2")
    
    ax = plt.gca()
    # 隐藏掉右边和上面的轴
    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')
    # 把下面的轴当做x轴
    ax.xaxis.set_ticks_position('bottom')
    # 把左面的轴当做y轴
    ax.yaxis.set_ticks_position('left')
    
    # 设置原点为(0, 0)点
    ax.spines['bottom'].set_position(('data', 0))
    ax.spines['left'].set_position(('data', 0))
    
    # 在直线上添加标注点
    x0 = 1
    # 直线方程
    y0 = 2 * x0 + 1
    # 在图形上设置(x0, y0)的点,s(size)设置为50, c(color)=blue
    plt.scatter(x0, y0, s=50, c='b')
    # 画一条(x0, y0)到(x0, 0)的直线, linestyle(线条样式)为虚线,颜色为黑色,线宽为2.5宽度
    plt.plot([x0, x0], [y0, 0], linestyle='--', color='black', linewidth=2.5)
    
    # 标注1
    plt.annotate(r'$2x+1=%s$' % y0, xy=(x0, y0), xycoords='data', xytext=(+30, -30), textcoords='offset points', fontsize=16, arrowprops=dict(arrowstyle='->', connectionstyle='arc3, rad=.2'))
    
    # 标注2
    plt.text(-0.75, 2, r'$This is the some text.  mu sigma_i alpha_t$', fontdict={'size':16, 'color':'red'})
    # 显示图表
    plt.show()
    
    

    显示的图为:

  • 相关阅读:
    关于链表的代码
    c++中的友元函数
    javaweb笔记全套
    包装类、object、单例模式、final、抽象类
    Linux变量内容的删除、代替与替换
    2014年工作中遇到的20个问题:181-200
    Qt中 QString 和int,double等的转换
    jsp学习笔记总结
    工作日志2014-07-04
    Maple入门使用教程
  • 原文地址:https://www.cnblogs.com/dreampursuer/p/7858148.html
Copyright © 2011-2022 走看看