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()

  • 相关阅读:
    codeforces C. Fixing Typos 解题报告
    codeforces B. The Fibonacci Segment 解题报告
    codeforces B. Color the Fence 解题报告
    codeforces B. Petya and Staircases 解题报告
    codeforces A. Sereja and Bottles 解题报告
    codeforces B. Levko and Permutation 解题报告
    codeforces B.Fence 解题报告
    tmp
    API 设计 POSIX File API
    分布式跟踪的一个流行标准是OpenTracing API,该标准的一个流行实现是Jaeger项目。
  • 原文地址:https://www.cnblogs.com/csnd/p/11807819.html
Copyright © 2011-2022 走看看