深度学习--Matplotlib学习笔记(一)

在深度学习中绘图工具必不可少,于是Matplotlib的强大功能便体现出来。下面讲解一下几种简单的图形的绘制方法。

绘制折线图

折线图是最简单的一类图形,下面我们用pylot实现绘制折线图的功能。

这个命令用来在jupyter内部显示图片

%matplotlib inline

首先需要导入Matplotlib包中的Pyplot模块

import matplotlib.pyplot as plt

接下来,使用 NumPy 提供的函数 arange() 创建一组数据来绘制图像。

#引入numpy包
import numpy as np
#获得0到2π之间的ndarray对象
x = np.arange(0, math.pi*2, 0.05)

上述所得 x 的值作用到 x 轴上,而该值对应的正弦值,也就是 y 值,使用以下方法获取:

y = np.sin(x)

使用 plot() 函数对 x、y 进行绘制。

plt.plot(x,y)

主要的绘图工作已经完成,不过还需要绘制一些细节,需要我们补充一下,比如图像的标题(title)、x 轴与 y 轴的标签(label)等。

plt.xlabel("angle")
plt.ylabel("sine")
plt.title('sine wave')

完整的程序代码如下:

    from matplotlib import pyplot as plt
    import numpy as np
    import math
    #调用math.pi方法弧度转为角度
    x = np.arange(0, math.pi*2, 0.05)
    y = np.sin(x)
    plt.plot(x,y)
    plt.xlabel("angle")
    plt.ylabel("sine")
    plt.title('sine wave')
    #使用show展示图像
    plt.show()

代码执行后,显示结果如下:请添加图片描述
是不是很简单,下面再来绘制一个U-I特性图:

I(mA)23.9213.349.267.957.055.214.49
U(V)4.785.325.535.595.645.715.76
%matplotlib inline
import torch
from IPython import display
from matplotlib import pyplot as plt
import numpy as np
import random
x=[5.00,4.17,3.57,3.33,3.12,2.78,2.50]
y=[0.00,0.83,1.43,1.67,1.88,2.22,2.50]
plt.plot(x,y)
plt.ylabel("U/V")
plt.xlabel("I/mA")
plt.title("U-I")
plt.show()

请添加图片描述

绘制曲线图

PyLab 是一个面向 Matplotlib 的绘图库接口,其语法和 MATLAB 十分相近。它和 Pyplot 模快都够实现Matplotlib 的绘图功能。PyLab 是一个单独的模块,随 Matplotlib 软件包一起安装,该模块的导包方式和 Pyplot不同,如下所示:

    #Pyplot导包方式
    from matplotlib import pyplot as plt
    #PyLab导包有两种方式
    import pylab
    from pylab import *

其实PyLab和Pyplot能够实现的功能基本一致,只是PyLab和MATLAB 十分相近,用法简便。

import numpy as np
x=np.linspace(-3, 3, 30)
y=x**3
plt.plot(x,y,'r')
plt.show()

请添加图片描述

如果您要绘制特殊类型的线条,并想添加一些颜色,PyLab 提供了如下方法:

符号 ‘-’,’–’,’-.’,’:’,’.’,’,’,,o,^,v<,>,s,+,x,D,d,1,2,3,4,h,H,p,| ,_
颜色 b(蓝色),g(绿色),r(红色),c(青色),m(品红),y(黄色),k(黑色),w(白色)

效果如下:

from pylab import *
x = linspace(-3, 3, 30)
y = x**2
plot(x, y, 'r.')
show()

请添加图片描述

如果您想在同一绘图区域内绘制多个图形,只需要使用多个绘图命令。示例如下:

from matplotlib import pyplot as plt
import numpy as np
x=np.arange(-4,0,0.1)
plt.plot(x,sin(x),'r')
plt.plot(x,cos(x),'g--')
plt.plot(x,-sin(x),'b.')
plt.show()

请添加图片描述

如果想清除图像,直接在程序末尾调用 clf() 方法即可。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

snowy2002

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值