1、Matplotlib 简单画图
在本章中,我们将学习如何使用Matplotlib创建一个简单图。假设要在Matplotlib中显示一个简单的角度线图,以弧度为单位,与正弦值相对应。首先,导入Matplotlib包中的pyplot模块,并使用别名为plt。
import matplotlib.pyplot as plt
接下来需要一组数字来绘制。NumPy库中定义了各种数组函数,这些函数是使用np别名导入的。
import numpy as np
使用NumPy库中的arange()函数获得0到2π之间角度的ndarray对象。
x = np.arange(0, math.pi*2, 0.05)
ndarray对象用作图的x轴上的值。通过以下语句获得在y轴上显示的x中的角度的相应正弦值 -
y = np.sin(x)
使用plot()函数绘制两个数组的值。
plt.plot(x,y)
可以设置绘图标题以及x和y轴的标签。
plt.xlabel("angle")
plt.ylabel("sine")
plt.title('sine wave')
show()函数调用绘图查看器窗口 -
plt.show()
完整的程序代码如下 -
import matplotlib.pyplot as plt
import numpy as np
import math #needed for definition of pi
# 显示中文设置...
plt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体)
plt.rcParams['axes.unicode_minus'] = False # 步骤二(解决坐标轴负数的负号显示问题)
x = np.arange(0, math.pi*2, 0.05)
y = np.sin(x)
plt.plot(x,y)
plt.xlabel(u"角度")
plt.ylabel("正弦")
plt.title('正弦波')
plt.show()
运行结果
2、Matplotlib pylab模块
PyLab是Matplotlib面向对象绘图库的过程接口。Matplotlib是整个包; matplotlib.pyplot是Matplotlib中的一个模块; 它和PyLab是一个与Matplotlib一起安装的模块。
PyLab是一个非常方便模块,可以在单个名称空间中批量导入matplotlib.pyplot(用于绘图)和NumPy(用于数学和使用数组)。虽然有许多示例使用PyLab,但不再推荐使用它。
3、基本绘图
绘制曲线使用plot命令完成,它需要一对相同长度的数组(或序列),如下示例代码 -
from numpy import *
from pylab import *
x = linspace(-3, 3, 30)
y = x**2
#plt.title('title')
plot(x, y)
show()
运行结果
如要绘制符号而不是线,请提供其他字符串参数,可用的符号参数如下:
符号:^ , v , < , > , s , + , x , D , d , 1 , 2 , 3 , 4 , h , H , p , | , _ , - , –, -., , . , , , o ,
颜色:b, g, r, c, m, y, k, w
接下来看看以下代码 -
from pylab import *
x = linspace(-3, 3, 30)
y = x**2
plot(x, y, 'r|')
show()
运行结果
可以覆盖图。只需使用多个绘图命令。使用clf()清除绘图。
from pylab import *
x = linspace(-3, 3, 30)
y = x**2
plot(x, sin(x))
plot(x, cos(x), 'r-')
plot(x, -sin(x), 'g--')
show()
运行结果