介绍matplotlib和pyplot

我们在本教程中使用的Anaconda Python发行版附带了大量有用的Python包。其中之一是matplotlib,这是一个用于构建绘图的库。这个较大的库中的一个模块是pyplot,它提供了一个简单且易于使用的用于构造图形的接口。

对于我们的第一个pyplot示例,我将以上节课的线性回归示例为基础。这一次,我想计算回归线,然后使用pyplot来绘制原始数据点和回归线。

下面是该示例的完整源代码。下面我将对此进行详细分析,并介绍使用pyplot的一些特定方面。

进口matplotlib。pyplot as plt def readData(fileName): ““”通用数据读取函数:读取文本文件中的行并将它们拆分为列表”“” data = [] with open(fileName) as f: for line in f.r readlines(): data.append(line.split())返回数据def cleanLine(line): ““”将原始行列表转换为适当的数据格式。””“返回(int([0]行),浮动([1])行)def意味着(双):xSum = 0 ySum x = 0, y成对:xSum + y = x ySum + = N = len(对)返回(xSum / N, ySum / N) def协方差(对,意味着):金额为x = 0, y成对:总和+ = (x [0]) * (y表示[1])返回总和def xVariance(对,xMean):金额为x = 0, y成对:总和+ = (x-xMean) * (x-xMean)返回总和def regressionCoeffs(双):““计算线性回归系数(a, b)的列表(x, y)对。”“” m = means(pairs) beta = covariance(pairs,m)/xVariance(pairs,m[0]) alpha = m[1]-beta*m[0] return (alpha,beta) rawData = readData("farm.txt") pairs = [cleanLine(line) for line in rawData] a,b = regressionCoeffs(pairs) # pyplot期望绘制的数据是x值列表和y值列表的#形式。#重新配置数据以适应pyplot。x = [year for year,pop in rawData] y = [pop for year,pop in rawData] s = [1930,1990] t = [a+b*1930,a+b*1990] #现在绘制数据序列和回复线plt.plot(x,y,'rs',s,t,'b-') #设置轴细节plt.axis([1930,1990,0,35]) plt.xlabel(" year ") plt。ylabel(“农场人口(百万)”)

pyplot基础

要使用pyplot,我们从import语句开始。

进口matplotlib。Pyplot为PLT

matplotlib是Anaconda发行版的一部分,所以您应该已经安装了matplotlib。

pyplot中第一个也是最重要的方法是plot()方法,它绘制一组数据点。Plot()期望以x值列表和单独的y值列表的形式提供数据点。如果您的数据没有以这种方式组织,您将不得不编写一些代码来重新组织它。在这个例子中,我们从文件中读取的数据被存储为(x,y)元组的列表,所以我们必须开始用一些代码从该数据构建单独的x和y列表:

x =[年为一年,弹出rawData] y =[年为一年,弹出rawData]

为了绘制回归线,我们简单地构建了一个由几个点组成的数据序列,这些点是我们要绘制的直线的端点:

S = [1930,1990] t = [a+b*1930,a+b*1990]

plot()命令可以绘制一个或多个数据序列。在每个序列之后,我们还需要提供一个格式字符串来指定我们希望如何绘制该序列:

“rs”plt.plot (x, y,, t, b -)

格式字符串由两个字符组成,一个颜色和一个情节样式。下面是可用的颜色值及其字母代码的表格:

颜色 代码
蓝色的 b
绿色 g
红色的 r
青色 c
洋红色
黄色的 y
黑色的 k
白色 w

下面是一些可用的情节风格的表格:

风格 代码
-
虚线
o
广场 年代

我们上面使用的绘图示例将使用红色方块和回归线作为蓝线来绘制数据序列。

在设置好绘图之后,你通常还需要设置坐标轴并标记它们。这些命令就是这样做的。

plt.axis([1930,1990,0,35]) plt.xlabel("Year")ylabel(“农场人口(百万)”)

axis()方法接受一个列表,该列表给出x轴的开始值和结束值,然后是y轴的开始值和结束值。

绘图的最后一步是告诉pyplot显示该绘图。

plt.show ()

这将打开一个显示绘图的图形窗口。图形窗口提供了允许您编辑或保存图像的控件。下面是这个示例程序生成的图。

你也可以让pyplot将图保存在一个图像文件中:

plt.save('farm.png')

这将把图像文件保存在与Python程序源代码文件相同的目录中。