Python PyLab模块
在执行某些任务时,我们需要使用图表,如折线图、条形图等,出于许多原因,例如使任务更具交互性、以非常有趣的方式传递信息、图表易于理解等。这就是为什么绘制图表是许多函数中非常重要和综合的一部分。图表在编程领域中起着非常重要的作用,开发人员总是建议在他们的程序中使用图表。因此,我们应该明确如何从程序中绘制图表是非常重要的。MATLAB被认为是绘制图表的最佳选择,但不是每个人都能使用MATLAB绘制图表。我们在Python中有许多交互式模块可以让我们在输出中绘制图表,但在这里我们将讨论一个模块,它通过导入函数为我们提供了类似于MATLAB的命名空间。在本教程中,我们将讨论Python的PyLab模块,学习如何使用该模块的函数在程序中绘制图表。
Python中的PyLab模块
PyLab是Python包,它通过从Python Numpy和Matplotlib模块导入函数,为我们提供了一个类似于MATLAB界面的Python编程命名空间。如果我们讨论这些模块在PyLab包中的作用,MATLAB模块提供了帮助我们创建数据可视化的函数,而Numpy模块提供了基于底层C和Fortran二进制库的高效数值向量计算函数。我们将在本节中学习PyLab模块,然后使用该模块提供给我们的元素和函数绘制一些基本图表和图表。
PyLab模块:介绍
PyLab模块是Python的Matplotlib模块的关联模块,当我们安装Matplotlib模块时,它会与之一起安装在我们的系统中。我们还可以说PyLab是Matplotlib模块的过程化接口,它是Python的面向对象绘图库。对于我们来说,PyLab本身是一个令人信服的模块,因为它的import语句将NumPy模块的函数和matplotlib.pyplot包导入到一个命名空间中,提供类似于MATLAB的命名空间。
PyLab模块:安装
正如我们已经讨论过的,PyLab模块会在安装Matplotlib包时一同安装。但是,如果我们想在Python程序中使用这个模块,我们应该确保Matplotlib模块在我们的系统中存在。如果系统中没有Matplotlib,那么我们可以使用以下pip安装器命令在命令提示符终端中安装Matplotlib模块,以获取其中的PyLab模块:
pip install matplotlib
除此之外,我们还讨论了PyLab模块还使用了Numpy模块的数学和向量运算函数。因此,我们必须确保Numpy模块也存在于我们的系统中,如果没有安装,则可以使用以下命令从命令提示符终端安装numpy模块:
pip install numpy
我们已经安装了PyLab模块的所有必需库,现在我们可以在Python程序中使用PyLab模块的函数来绘制图表和曲线。
PyLab模块:实现
在这里,我们将使用PyLab模块的函数来在Python程序中绘制简单的曲线和图形,以理解它的实现。我们首先从基本的曲线绘制开始,然后我们将使用一些高级函数来使绘制的图形和曲线更加交互。
用PyLab模块进行基本绘图
在Python程序中使用PyLab模块绘制曲线需要使用plot命令,该命令接受一对具有相同长度的数组或序列。让我们通过一个示例程序来理解这个实现。
示例:
看看下面的Python程序,我们将在输出中绘制一个基本曲线:
# Importing from Numpy
from numpy import *
# Importing from PyLab
from pylab import *
# X-axis of the curve
a = linspace(-4, 2, 6)
# Y-axis of the curve
b = a**2
# Plotting the curve with x and y-axis
plot(a, b)
# Showing curve in the output
show()
输出:
解释:
我们首先从Numpy和PyLab模块导入了所有的函数,以便在程序中使用它们来绘制输出中的曲线。然后,我们分别在变量a和b中定义了曲线的X轴和Y轴。然后,我们使用plot()函数并提供a和b变量作为参数。最后,我们使用show()函数显示我们在输出中绘制的曲线。
正如我们在输出中可以看到的,曲线显示了我们在变量a和b中定义的X轴和Y轴点。
使用PyLab模块进行高级绘图
1. 我们可以在plot()函数中使用一些参数,以及我们在其中提供的x和y变量参数,使用PyLab模块绘制更具交互性的曲线。我们必须在plot()函数中提供额外的字符串参数,以便在曲线中打印符号线而不是直线。我们可以通过在以下示例程序中使用额外的参数来理解这一点:
示例2:
看一下下面的Python程序,在输出中绘制一个带有符号的曲线,使用PyLab模块:
# Importing from Numpy
from numpy import *
# Importing from PyLab
from pylab import *
# X-axis of the curve
a = linspace(-4, 8, 32)
# Y-axis of the curve
b = a ** 3
# Plotting the curve with a and b variable
plot(a, b, '^')
# Showing curve in the output
show()
输出:
解释:
在程序中导入Numpy和PyLab模块的函数之后,我们定义了X轴和Y轴的曲线变量’a’和’b’。然后,我们使用plot()函数,并在plot函数内部使用了’^’符号作为额外的参数,并将其与变量a和b一起使用,以显示带有符号的曲线,而不是简单的直线。
如我们在输出中看到的,曲线显示了我们在变量’a’和’b’内分别定义的X轴和Y轴点,并且用’^’符号代替了直线。
如果我们希望在曲线中打印符号线而不是直线,我们可以在plot()函数内部使用以下一组符号作为参数:
符号 | _, | , p, H, h, 4, 3, 2, 1, d, D, x, +, s, <, >, v, ^, o, ., ,, -, -., –. |
---|---|---|
2. 除此之外,如果我们想要,我们还可以打印出与默认颜色不同的颜色的线条,并且为了完成这个任务,我们必须遵循相同的一套指令。我们必须在plot()函数内使用颜色参数作为额外的参数,这样输出中打印的曲线线条将会以我们选择的颜色打印出来。我们可以通过以下示例程序中使用这个额外的参数来理解:
示例3:
看下面的Python程序,在输出中绘制一条具有彩色线条的曲线,使用PyLab模块:
# Importing from Numpy
from numpy import *
# Importing from PyLab
from pylab import *
# X-axis of the curve
a = linspace(-4, 8, 32)
# Y-axis of the curve
b = a ** 3
# Plotting the curve with a and b variable
plot(a, b, 'y')
# Showing curve in the output
show()
输出:
说明:
在这个程序中,我们使用了与上一个示例程序相同的逻辑。我们在这个程序的plot()函数中使用了color参数来在输出中显示具有彩色线条的曲线。最后,我们使用show()函数来显示具有自定义变量的曲线。
如我们在输出中可以看到的,曲线显示了我们在变量’a’和’b’中定义的X轴和Y轴点,并且它具有黄色的线条,因为我们在plot()函数中给定了一个额外的color参数。
如果我们想要在曲线中打印一条具有我们选择的颜色的直线,我们可以在plot()函数中使用以下一组颜色代码作为额外的参数:
Colour codes | w, k, y, m, c, r, g, b |
---|---|
4. 现在,如果你想知道我们是否可以同时进行这两种操作(打印符号线而不是直线,并以我们选择的颜色打印它),答案是可以。我们可以同时执行这两个任务,只需要将两个参数作为单个附加参数添加到plot()函数中,例如’_y’。然后,它将同时执行两种操作,并在输出中打印出具有我们选择颜色的符号线曲线。通过以下示例程序,我们可以理解这一点:
示例4:
看一下以下Python程序,我们将使用PyLab模块在输出中绘制一条曲线:
# Importing from Numpy
from numpy import *
# Importing from PyLab
from pylab import *
# X-axis of the curve
a = linspace(-3, 3, 30)
# Y-axis of the curve
b = a ** 2
# Plotting the curve with a and b variable
plot(a, b, 'm+')
# Showing curve in the output
show()
输出:
正如我们在输出中所看到的,我们打印了一个带有彩色符号线的曲线。
4. 最后,我们还可以在单个图中打印多个曲线,在此之前我们只需要在程序中使用多个plot()函数即可。我们可以通过以下示例程序中使用多个plot()函数来理解这种方法:
示例5:
请看下面的Python程序,我们在其中多次使用plot()函数来叠加曲线:
# Importing from Numpy
from numpy import *
# Importing from PyLab
from pylab import *
# Defining multiple variables for multiple plot() function
a = linspace(2, 3, 4, 5)
b = linspace(1, 2, 3, 4)
c = linspace(3, 5, 7, 9)
x = a ** 2
y = b ** 2
z = c ** 2
# Using plot() function multiple times
plot(a, x, 'y-')
plot(b, y, 'c--')
plot(c, z, 'g.')
# Showing curve in the output
show()
输出:
正如我们可以在输出中看到的,在程序中使用plot()函数多次绘制了多条曲线,并将它们叠加在一起。
结论
在本教程中,我们学习了PyLab模块,我们了解到PyLab模块提供了类似于MATLAB的命名空间,对于使用Python程序绘制多功能曲线非常有帮助。我们通过导入PyLab和Numpy模块中的函数,在输出中绘制了多种类型的曲线。在开始进行基本绘图后,我们绘制了具有符号线和/或颜色线的曲线,并且叠加了曲线。