博客
关于我
【Matplotlib】(一)绘制图像函数
阅读量:464 次
发布时间:2019-03-06

本文共 2256 字,大约阅读时间需要 7 分钟。

Matplotlib绘图库入门

Matplotlib 是 Python 中最著名的绘图库之一,它提供了类似于 MATLAB 的命令 API,非常适合用于交互式绘图。Matplotlib 的文档非常全面,并配有丰富的 Gallery 页面,里面有上百幅缩略图,每幅图都附有源代码。因此,只要你需要绘制某种类型的图像,只需在 Gallery 中浏览、复制、粘贴即可,基本上都能轻松完成。

1.1 代码实现

为了实现绘制函数 ( y = x^2 ) 的图像,我们可以按照以下步骤进行:

  • 导入 Matplotlib 和 NumPy 库:

    import matplotlib.pyplot as plt
    import numpy as np
  • 定义 x 变量的范围 (-3, 3),数量为 50:

    x = np.linspace(-3, 3, 50)
    y = x ** 2
  • 创建一个 Figure 对象并指定大小:

    plt.figure(num=3, figsize=(8, 5))
  • 绘制曲线,设置颜色为红色,线宽度为 1,线型为虚线:

    plt.plot(x, y, color='red', linewidth=1.0, linestyle='--')
  • 设置 x 和 y 轴的范围及标注:

    plt.xlim(-1, 2)
    plt.ylim(-2, 3)
    plt.xlabel('x')
    plt.ylabel('y')
  • 设置坐标轴刻度:

    new_ticks = np.linspace(-1, 2, 5)
    plt.xticks(new_ticks)
    plt.yticks([-2.2, -1, 1, 1.5, 2.4], [r'$really bad$', r'$bad$', r'$normal$', r'$good$', r'$really good$'])
  • 隐藏坐标轴边框并调整位置:

    ax = plt.gca()
    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')
    ax.xaxis.set_ticks_position('bottom')
    ax.spines['bottom'].set_position(('data', 0))
    ax.yaxis.set_ticks_position('left')
    ax.spines['left'].set_position(('data', 0))
  • 设置标题:

    ax.set_title('y = x^2', fontsize=14, color='r')
  • 显示图像:

    plt.show()
  • 1.2 基本构成

    在 Matplotlib 中,图像由 Figure 对象和 Axes 对象组成。每个 Axes 对象都有独立的坐标系统。关系如下:

    • Title:图像标题
    • Axis:坐标轴
    • Label:坐标轴标注
    • Tick:刻度线
    • Tick Label:刻度注释

    2.1 绘制简单图像

    要绘制简单的图像,可以按照以下步骤进行:

  • 导入必要的模块:

    import matplotlib.pyplot as plt
    import numpy as np
  • 定义 x 变量的范围:

    x = np.linspace(-3, 3, 50)
    y = x ** 2
  • 创建 Figure 并绘制曲线:

    plt.figure()
    plt.plot(x, y)
    plt.show()
  • 2.2 设置 Figure 图像

    为了更好地定制图像,可以按照以下步骤进行:

  • 创建 Figure 对象并指定大小:

    plt.figure(num=3, figsize=(8, 5))
  • 绘制曲线并设置属性:

    plt.plot(x, y, color='red', linewidth=1.0, linestyle='--')
  • 2.3 设置坐标轴

    为了使图像更加精确,可以按照以下步骤进行:

  • 设置 x 轴范围及刻度:

    new_ticks = np.linspace(-1, 2, 5)
    plt.xticks(new_ticks)
  • 设置 y 轴范围及刻度:

    plt.yticks([-2.2, -1, 1, 1.5, 2.4], [r'$really bad$', r'$bad$', r'$normal$', r'$good$', r'$really good$'])
  • 2.4 移动坐标轴

    为了使坐标轴更加美观,可以按照以下步骤进行:

  • 获取当前坐标轴:

    ax = plt.gca()
  • 隐藏边框:

    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')
  • 调整坐标轴位置:

    ax.xaxis.set_ticks_position('bottom')
    ax.yaxis.set_ticks_position('left')
  • 设置边框位置:

    ax.spines['bottom'].set_position(('data', 0))
    ax.spines['left'].set_position(('data', 0))
  • 2.5 设置标题

    最后,可以设置图像标题:

    ax.set_title('y = x^2', fontsize=14, color='r')

    通过以上步骤,你可以轻松地使用 Matplotlib 绘制出高质量的图像,并进行各种定制。

    转载地址:http://jlpfz.baihongyu.com/

    你可能感兴趣的文章
    mysql deadlock found when trying to get lock暴力解决
    查看>>
    MuseTalk如何生成高质量视频(使用技巧)
    查看>>
    mutiplemap 总结
    查看>>
    MySQL DELETE 表别名问题
    查看>>
    MySQL Error Handling in Stored Procedures---转载
    查看>>
    MVC 区域功能
    查看>>
    MySQL FEDERATED 提示
    查看>>
    mysql generic安装_MySQL 5.6 Generic Binary安装与配置_MySQL
    查看>>
    Mysql group by
    查看>>
    MySQL I 有福啦,窗口函数大大提高了取数的效率!
    查看>>
    mysql id自动增长 初始值 Mysql重置auto_increment初始值
    查看>>
    MySQL in 太多过慢的 3 种解决方案
    查看>>
    MySQL InnoDB 三大文件日志,看完秒懂
    查看>>
    Mysql InnoDB 数据更新导致锁表
    查看>>
    Mysql Innodb 锁机制
    查看>>
    MySQL InnoDB中意向锁的作用及原理探
    查看>>
    MySQL InnoDB事务隔离级别与锁机制深入解析
    查看>>
    Mysql InnoDB存储引擎 —— 数据页
    查看>>
    Mysql InnoDB存储引擎中的checkpoint技术
    查看>>
    Mysql InnoDB存储引擎中缓冲池Buffer Pool、Redo Log、Bin Log、Undo Log、Channge Buffer
    查看>>