zoukankan      html  css  js  c++  java
  • Python中Matplotlib模块的简单使用

    目录

    Matplotlib

    pyplot类

    pyplot.plot()

    配置属性

    pyplot.subplot()


    Matplotlib

    Matplotlib 是 Python 2D 绘图领域使用最广泛的套件。它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。

    pyplot类

    matplotlib.pyplot类提供一个类似matlab的绘图框架

    pyplot.plot()

    matplotlib.pyplot.plotx , y ,' color  marker  line')

    对于样式 'color   marker  line' ,每一个都是可选的。如果没有提供,则使用样式周期的值。例外情况:如果line是给的,但不是marker,数据将是一条没有标记的行。

    color颜色

    marker标记

    line线条样式

    import numpy as np
    from matplotlib import pyplot as plt
    x=np.array([1,2,3,4])
    y=np.array([1,2,3,4])
    z=np.array([2,4,6,8])
    i=np.array([5,6,7,8])
    plt.plot(x,y,'r.')  #x轴 y轴 样式
    plt.plot(x,z,'g*--',lw=5)  #x轴 y轴 样式 宽度
    plt.plot(x,i,'bD:')  #x轴 y轴 样式
    plt.show()

     

    画正弦余弦函数

    #画正弦函数
    import numpy as np
    import matplotlib.pyplot as plt          #画图的库
    x=np.arange(-6,6,0.1) #第一个参数是X轴的start 第二个参数是X轴的end
    y=np.sin(x)
    z=np.cos(x)
    plt.plot(x,y)
    plt.plot(x,z)   #不设置颜色时,系统默认设置
    plt.show()
    

    配置属性

    因为是面向对象的绘图库,我们可以为每个对象配置它们的属性,有三种方法可以配置:

    1. 一是通过对象的方法 set_属性名()函数
    2. 二是通过对象的 set() 函数
    3. 三是通过 pylot 模块提供的 setp() 函数
    import matplotlib.pyplot as plt
    plt.figure()
    line=plt.plot(range(2))[0]    # plot函数返回的是一个列表,因为可以同时画多条线
    line.set_color('r')          #设置颜色
    line.set_linewidth(10)       #设置宽度
    plt.show()
    
    ########################################################
    
    import matplotlib.pyplot as plt
    plt.figure()
    line=plt.plot(range(2))[0]
    line.set(color='r',linewidth=10)
    plt.show()
    
    ########################################################
    
    plt.figure()
    line=plt.plot(range(2))[0]
    plt.setp(line,color='r',linewidth=10)
    plt.show()
    

    以上三种设置绘图属性都是下面同一种效果 

     

    pyplot.subplot()

    plt.subplot作用是把一个绘图区域(可以理解成画布)分成多个小区域,用来绘制多个子图。

    matplotlib.pyplot.subplot(nrows, ncols, plot_number)

    nrows和ncols表示将画布分成(nrows*ncols)个小区域,每个小区域可以单独绘制图形;plot_number表示将图绘制在第plot_number个子区域。

    举例: plt1 = subplot(222),

    表示画布分成(2*2=4)个小区域,并将图 plt1 绘制在画布中的第二个子区域,也就是右上角位置。

    import numpy as np
    from matplotlib import pyplot as plt
    x=[1,2,3]
    y=[1,2,3]
    z=[3,2,1]
    a=np.arange(-2*np.pi,2*np.pi,0.1)
    b=np.sin(a)
    c=np.cos(a)
    plt1=plt.subplot(221)    #将画布划分成2*2的区域 ,我们画第1个区域
    plt1.plot(x,y,'b')       #画第一个图
    plt2=plt.subplot(222)    #将画布划分成2*2的区域 ,我们画第2个区域
    plt2.plot(x,z,'r--')    #画第二个图
    plt3=plt.subplot(223)   #将画布划分成2*2的区域 ,我们画第3个区域
    plt3.plot(a,b,'c:')     #画第三个图
    plt4=plt.subplot(224)   #将画布划分成2*2的区域 ,我们画第4个区域
    plt4.plot(a,c,'y--')    #画第四个图
    plt.show()

  • 相关阅读:
    P2073 送花(Treap维护双权值)
    P2041 [NOI2005]维护数列(Splay树支持插入区间、删除区间、修改区间、翻转区间、区间求和、区间带修改最大子列和的代码模板)
    P1801 黑匣子(Treap树)
    P3377 【模板】左偏树(可并堆)
    P1553 可怜的狗狗(可持久化线段树)
    P1503 鬼子进村(Treap树)
    Adobe CC 2017 全系列官方中文版32/64位
    Serverless简介
    小程序开发框架MPVue和uni-app
    ORM对象关系映射
  • 原文地址:https://www.cnblogs.com/csnd/p/11807818.html
Copyright © 2011-2022 走看看