matplotlib用法总结(标记、画图)

  此前总结过两次matplotlib库,此次进一步加深并扩展更多用法。

前两次文章

  一:https://www.cnblogs.com/2020zxc/p/13369178.html

  二:https://www.cnblogs.com/2020zxc/p/13620865.html

  本次总结综合以前所学,归纳用法,以及把一些较好的文章推出来

画折线统计图,使用关键函数:
  plt.plot()

画出条形统计图:
  plt.bar()
显示图片,使用关键函数
  plt.imshow

显示图片示例代码:
    img0 = cv2.imread(imgpath2)
# imgpath2是完整图像路径,由于opencv读取的通道顺序是bgr,因此需要转换为rgb
    imgb,imgg,imgr = cv2.split(img0)
    img = [imgr,imgg,imgb]
    img = cv2.merge(img)
    cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
    cv2.imshow('test', img)
    cv2.waitKey(0)
    
    plt.figure(figsize=(8, 6), dpi=80)
    # figsize表示创建显示图片窗口大小,dpi表示分辨率,也可以不填,使用默认参数
    plt.imshow(img, alpha=0.5, cmap=plt.cm.gray)
    # 输入需要显示的图片img(ndarry类型变量),alpha=0.5表示透明度为50%,cmap=plt.cm.gray表示显示为灰色,cmap还可以填入其他参数
    plt.show()
View Code

  画统计图示例:

  最简单的语句是

  plt.plot(x, y),表示输入x和y两个list,将根据各个对应点画出折线统计图,因此x、y长度必须保持一致(可以写一个函数让他们有对照关系)。
 x、y对照生成代码如:
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(-3, 3, step=0.1)
y = np.sin(x)
plt.plot(x, y)
plt.show()

  更深层次地,可以对特殊点标记、注释、透明、加某个点的文本标记等。

    导入必要的包省略.....
    随便创建几条曲线:
    x = np.arange(-3, 3, 0.3)
    y = np.cos(x)*x
    y2 = np.sin(x)*x**3-x
    y3 = np.sin(x)*x**2-x
    plt.plot(x, y, 'o', ms=5, color='blue', label='label1',alpha=0.9)
    plt.plot(x, y2, linestyle='--',color='red', alpha=0.4,label='label2')
    plt.plot(x, y3, marker='x',color='green', alpha=0.8,label='label3')
    # 'o'表示使用圆形画出散点图,默认为实线,color表示点的颜色,label表示对曲线说明标记,alpha表示透明度
    # linestyle表示折线图的样式,可以有虚线实现点划等等,
    # 以上的‘o’与linestyle命令不可以同时在同一个函数使用,且都不可以与marker命令使用
    # 实践可以发现,marker命令会把曲线上的点和点与点之间的连接都确定
    plt.legend()    # 使用默认标签位置,会自动调整适合区域,设置label后必须调用该函数
    plt.show()
View Code

实验效果:

 各个参数表说明:

plt.legend(loc='center') 中的loc参数(默认会自动调整到适应位置):

'best'         0, (only implemented for axes legends)(自适应方式)

'upper right'  1,
'upper left'   2,
'lower left'   3,
'lower right'  4,
'right'        5,
'center left'  6,
'center right' 7,
'lower center' 8,
'upper center' 9,
'center'       10,
颜色color:

 blue 蓝,缩写为:  b
 green 绿,缩写为  g
red 红        r
 cyan 蓝绿      c
magenta 洋红    m
yellow 黄      y
black 黑      k
 white 白      w

线型linestyle:
实线  '-'
虚线  '--'
点画线  '-.
点线  ':'

点型参数如marker

未完待续......

原文地址:https://www.cnblogs.com/2020zxc/p/15600660.html