zoukankan      html  css  js  c++  java
  • Matplotlib 使用指南

    1.理解Matplotlib

    2.matplotlib图标正常显示中文

    3.使用参数

    4.使用参考

    5. 样式

    1.理解Matplotlib

    1. 在Matplotlib中,整个图像为一个Figure 对象。Figure对象中可以包含一个或者多个Axes对象,每个Axes 对象都是一个拥有自己坐标系统的绘图区域。

    clipboard

    add_subplot(numRows, numCols, plotNum)

    • 图表的整个绘图区域被分成 numRows 行和 numCols 列;
    • 然后按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域的编号为1;
    • plotNum 参数指定创建的 Axes 对象所在的区域;

    subplots(numRows, numCols) 在一个figure创建指定的numRows*numCols示例图

    # 获取figure 方式一, fig = plt.figure() ax = fig.add_subplot(1, 1, 1) # 获取figure方式二 ax2 = plt.subplot(1,1,1) # 一个figure下存在多个坐标轴 fig ,(ax1,ax2,ax3) = plt.subplots(3,1)

    说明:

    • figure 代表一张画布,画布中可以存放多个axes ais 代表坐标轴参数

    2.matplotlib图标正常显示中文

    import matplotlib.pyplot as plt plt.rcParams['font.sas-serig']=['SimHei'] #用来正常显示中文标签 plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

    clipboard

    3.使用参数

    配置文件包括以下配置项:

      • axex: 设置坐标轴边界和表面的颜色、坐标刻度值大小和网格的显示
      • backend: 设置目标暑促TkAgg和GTKAgg
      • figure: 控制dpi、边界颜色、图形大小、和子区( subplot)设置
      • font: 字体集(font family)、字体大小和样式设置
      • grid: 设置网格颜色和线性
      • legend: 设置图例和其中的文本的显示
      • line: 设置线条(颜色、线型、宽度等)和标记
      • patch: 是填充2D空间的图形对象,如多边形和圆。控制线宽、颜色和抗锯齿设置等。
      • savefig: 可以对保存的图形进行单独设置。例如,设置渲染的文件的背景为白色。
      • verbose: 设置matplotlib在执行期间信息输出,如silent、helpful、debug和debug-annoying。
      • xticks和yticks: 为x,y轴的主刻度和次刻度设置颜色、大小、方向,以及标签大小。

    4.使用参考

    1. 确定坐标范围
      1. plt.axis([xmin, xmax, ymin, ymax])
      2. xlim(xmin, xmax)和ylim(ymin, ymax)来调整x,y坐标范围
    2. 改变绘图风格

    plt.style.use('ggplot')

    1. plt.figure()

    plt.figure(1) # 第一张图 plt.subplot(211) # 第一张图中的第一张子图 plt.plot([1,2,3]) plt.subplot(212) # 第一张图中的第二张子图 plt.plot([4,5,6]) plt.figure(2) # 第二张图 plt.plot([4,5,6]) # 默认创建子图subplot(111) plt.figure(1) # 切换到figure 1 ; 子图subplot(212)仍旧是当前图 plt.subplot(211) # 令子图subplot(211)成为figure1的当前图 plt.title('Easy as 1,2,3') # 添加subplot 211 的标题

    1. plt.text()添加文字说明

    plt.xlabel('Smarts') # 标识坐标轴 plt.ylabel('Probability') #添加标题 plt.title('Histogram of IQ') #添加文字 plt.text(60, .025, r'$mu=100, sigma=15$') plt.axis([40, 160, 0, 0.03]) # 图像的大小 plt.grid(True) # 显示表格

    1. plt.annotate()文本注释

    plt.annotate('local max', xy=(2, 1), xytext=(3, 1.5), arrowprops=dict(facecolor='black', shrink=0.05), ) # 参数分别为:注释内容 注释位置 内容位置 指示线参数 plt.ylim(-2,2)

    1. plt.xticks()/plt.yticks()设置轴记号

    # 设置轴记号 xticks([-np.pi, -np.pi/2, 0, np.pi/2, np.pi], [r'$-pi$', r'$-pi/2$', r'$0$', r'$+pi/2$', r'$+pi$']) yticks([-1, 0, +1], [r'$-1$', r'$0$', r'$+1$'])

    clipboard

    1. plt.legend()添加图例

    plot(X, C, color="blue", linewidth=2.5, linestyle="-", label="cosine") plot(X, S, color="red", linewidth=2.5, linestyle="-", label="sine") legend(loc='upper left') # 指定图例的位置

    5. 样式

    1. 颜色 按照RGB 定色
    1. 线条类型 linestyle
    '-'       solid line style
    '--'      dashed line style
    '-.'      dash-dot line style
    ':'       dotted line style
    1. 转角的风格 Marker
    '.'       point marker
    ','       pixel marker
    'o'       circle marker
    'v'       triangle_down marker
    '^'       triangle_up marker
    '<'       triangle_left marker
    '>'       triangle_right marker
    '1'       tri_down marker
    '2'       tri_up marker
    '3'       tri_left marker
    '4'       tri_right marker
    's'       square marker
    'p'       pentagon marker
    '*'       star marker
    'h'       hexagon1 marker
    'H'       hexagon2 marker
    '+'       plus marker
    'x'       x marker
    'D'       diamond marker
    'd'       thin_diamond marker
    '|'       vline marker
    '_'       hline marker

    clipboard

  • 相关阅读:
    《Android深度探究HAL与驱动开发》学习笔记----第八章
    《Android深度探究HAL与驱动开发》学习笔记----第七章
    《Android深度探究HAL与驱动开发》学习笔记----第六章
    《Android深度探究HAL与驱动开发》学习笔记----第五章
    《Android深度探究HAL与驱动开发》学习笔记----第四章
    《Android深度探究HAL与驱动开发》学习笔记----第三章
    《Android深度探究HAL与驱动开发》学习笔记----第二章
    《Android深度探究HAL与驱动开发》学习笔记----第一章
    Android深度探索(卷一)HAL与驱动开发 第九章
    Android深度探索(卷一)HAL与驱动开发 第十章
  • 原文地址:https://www.cnblogs.com/dgwblog/p/14855765.html
Copyright © 2011-2022 走看看