1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 如何使用python编程画图_【Python开发】使用python中的matplotlib进行绘图分析数据...

如何使用python编程画图_【Python开发】使用python中的matplotlib进行绘图分析数据...

时间:2021-02-23 20:46:08

相关推荐

如何使用python编程画图_【Python开发】使用python中的matplotlib进行绘图分析数据...

matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。

它的文档相当完备,并且 Gallery页面 中有上百幅缩略图,打开之后都有源程序。因此如果你需要绘制某种类型的图,只需要在这个页面中浏览/复制/粘贴一下,基本上都能搞定。

在Linux下比较著名的数据图工具还有gnuplot,这个是免费的,Python有一个包可以调用gnuplot,但是语法比较不习惯,而且画图质量不高。

而 Matplotlib则比较强:Matlab的语法、python语言、latex的画图质量(还可以使用内嵌的latex引擎绘制的数学公式)。

快速绘图

matplotlib的pyplot子库提供了和matlab类似的绘图API,方便用户快速绘制2D图表。例子:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

#

coding=gbk

'''

Created

on Jul12,

python

科学计算学习:numpy快速处理数据测试

@author:

皮皮

'''

importstring

importmatplotlib.pyplot

as plt

importnumpy

as np

if__name__

=='__main__':

file

= open(E:machine_learningdatasetshousing_datahousing_data_ages.txt,'r')

linesList

= file.readlines()

#

print(linesList)

linesList

= [line.strip().split(,)forline

in linesList]

file.close()

print(linesList:)

print(linesList)

#

years = [string.atof(x[0])forx

in linesList]

years

= [x[0]forx

in linesList]

print(years)

price

= [x[1]forx

in linesList]

print(price)

plt.plot(years,

price,'b*')#,label=$cos(x^2)$)

plt.plot(years,

price,'r')

plt.xlabel(years(+2000))

plt.ylabel(housing

average price(*2000yuan))

plt.ylim(0,15)

plt.title('line_regression

& gradient decrease')

plt.legend()

plt.show()

matplotlib中的快速绘图的函数库可以通过如下语句载入:

1

importmatplotlib.pyplot

as plt

pylab模块

matplotlib还提供了名为pylab的模块,其中包括了许多numpy和pyplot中常用的函数,方便用户快速进行计算和绘图,可以用于IPython中的快速交互式使用。

接下来调用figure创建一个绘图对象,并且使它成为当前的绘图对象。

1

plt.figure(figsize=(8,4))

也可以不创建绘图对象直接调用接下来的plot函数直接绘图,matplotlib会为我们自动创建一个绘图对象。如果需要同时绘制多幅图表的话,可以是给figure传递一个整数参数指定图标的序号,如果所指定序号的绘图对象已经存在的话,将不创建新的对象,而只是让它成为当前绘图对象。

通过figsize参数可以指定绘图对象的宽度和高度,单位为英寸;dpi参数指定绘图对象的分辨率,即每英寸多少个像素,缺省值为80。因此本例中所创建的图表窗口的宽度为8*80 = 640像素。

但是用工具栏中的保存按钮保存下来的png图像的大小是800*400像素。这是因为保存图表用的函数savefig使用不同的DPI配置,savefig函数也有一个dpi参数,如果不设置的话,将使用matplotlib配置文件中的配置,此配置可以通过如下语句进行查看:

1

2

3

>>>importmatplotlib

>>>

matplotlib.rcParams[savefig.dpi]

100

下面的两行程序通过调用plot函数在当前的绘图对象中进行绘图:

1

2

plt.plot(years,

price,'b*')#,label=$cos(x^2)$)

plt.plot(years,

price,'r')

plot函数的调用方式很灵活,第一句将x,y数组传递给plot之后,用关键字参数指定各种属性:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。