matlablib画曲线

  1. 示例
  2. linspace
  3. figure
  4. plot
  5. xlim和ylim
  6. xlabel和ylabel
  7. arange
  8. xticks和yticks
  9. show

示例

先来看看使用matlablib显示一条波形数据的例子

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(1, 605, 605)

y = np.array([5,9,11,11,9,8,7,5,2,1,3,7,9,9,7,5,5,6,6,6,4,3,4,4,4,4,5,6,5,2,2,2,2,2,2,1,2,2,2,2,2,2,2,1,0,0,1,2,2,1,1,1,1,1,1,2,2,2,2,2,2,2,3,2,2,2,2,2,1,1,1,1,1,1,2,2,1,1,1,1,1,0,1,1,1,0,0,0,0,0,1,1,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])
plt.figure(figsize=(10, 10))
plt.plot(x, y)
plt.xlim((1, 605))
plt.ylim((0, 255))
plt.xlabel('x axis')
plt.ylabel('y axis')
my_x_ticks = np.arange(1, 605, 50)
my_y_ticks = np.arange(0, 255, 10)
plt.xticks(my_x_ticks)
plt.yticks(my_y_ticks, np.arange(0, 100, 4))

plt.show()
plt.close

linspace

linspace是用于创建一个一维数组,并且是等差数列构成的一维数组;如:

>>> import numpy
>>> a = numpy.linspace(1, 10, 10)
>>> a
array([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])

这里第一个参数表示起始数值,第二个参数表示终止数值, 第三个参数表示数列个数。
其实还有第四个参数endpoint,默认为True,如果该参数设置为False,则输出的数组将不包含终止数值。

figure

调用figure能够创建一个用来显示图形输出的一个窗口对象.
函数原型

def figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=Figure, clear=False, **kwargs)
  • num: 整型或字符串,可选,默认为None
    如果不设置该参数,创建figure时,Figure号会递增,生成的对象会保存递增后的号码
    如果用数字设置该参数,当指定的id号已经生成Figure了,则返回该Figure的索引,则还没有生成,则创建他并返回
    如果用字符设置该参数,则将会用该参数设置窗口标题
  • figsize: 整型数组(元组),可选,默认为None
    宽度和长度的单位为英寸,如果不提供该参数,默认会设置为rc figure.figsize
  • dpi: 整型,可选,默认为None
    窗口的分辨率
  • facecolor: 背景颜色
  • edgecolor: 边框颜色
  • framon: 布尔值,可选,默认为True
    设置为False时,会停止画Figure帧
  • FigureClass: matplotlib.figure.Figure的子类
    可选,用于自定义Figure实例
  • clear: 布尔值,可选,默认为False
    设置为True且figure对象已经存在时,则对象会被清除
  • 返回值: Figure对象

plot

制图

xlim和ylim

分别设置当前X轴和Y轴的上限和上限

xlabel和ylabel

分别设置当前X轴和Y轴的标题

arange

类似于内置函数range(),通过指定开始值、终值和步长创建表示等差数列的一维数组,注意得到的结果数组不包含终值。与linspace是不同, linspace是确定列数。

xticks和yticks

分别获取或设置X轴或Y轴的核度定位和核度标签。
在matplotlib中ticks表示的是刻度,而刻度有两层意思,一个是刻度定位(tick locations),一个是刻度标签(tick labels)。
示例

locs, labels = xticks()   #获取定位和标签
xticks(locs, [labels], **kwargs)  #设置定位和标签
# 显示x轴的刻标
xticks( arange(6) )
# 显示x轴的刻标以及对应的标签
xticks( arange(5), ('Tom', 'Dick', 'Harry', 'Sally', 'Sue') )

此外xticks()还可以传入matplotlib.text.Text类的属性来控制显示的样式

xticks( arange(12), calendar.month_name[1:13], rotation=17 )

如果不想显示ticks则可以可以传入空的参数如yticks([])

show

显示Figure,程序会阻塞在这里,当用户关闭Figure窗口后才会往下执行,退出程序前,记得关闭窗口


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 add358@163.com

文章标题:matlablib画曲线

文章字数:1.4k

本文作者:Jake Yang

发布时间:2018-12-06, 11:31:26

最后更新:2019-12-16, 16:03:36

原始链接:https://add358.github.io/2018/12/06/Language-Python-2018-12-06-matlablib画曲线/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏