python之matplotlib库画图入门

    什么是matplotlib呢?其实matplotlib是python的一个包(库)。在您的计算机里安装anaconda这个软件,就可以直接使用这个包了。另外anaconda中集成了很多的python包,自带我们常用的Jupyter Notebook,是我们做数据科学,学习机器学习的很好工具。

    学习任何一种程序的世界里学习新东西都是从Hello World开始的,那么同样学习matplotlib我们也从入门级开始吧。

    直接上代码会不会吓到大家,这可是学习matplotlib最简单的一段程序了。这段代码的功能就是画一个初中数学中的一个sin函数,如下图所示。

    上图的代码块导入了matplotlib和numpy这两个库。使用了numpy中的linspace方法和sin方法,matplotlib库中的plot方法和show方法。其中linspace方法是在[0,2π]区间上取样100个数据,然后赋值给x,这个x的数据结构就是我们在numpy中常用的ndarray(数组)。plot方法就是使用x轴的数据和y轴的数据画的一个图,画的这个图使用show方法展示出来。是不是很简单!!!


    既然入门了,那就在多学习一点matplotlib方法吧。学习这些库就是在学习其中的方法,熟悉其中的用法,其实也没什么难的,只是我们不太熟悉罢了。那我们在看一个稍微比较完善的例子:如下图所示。


    先不晕哈,这里呢我主要造了两组数据。并把它们画到了一个图上。如下图所示。然后我又使用matplotlib中的xlabel方法和ylabel方法,给我的图添加了“x axis”和“y axis”。 title方法当然是设置图的标题了。还有plot方法中的’r--’和’b--’,是画红色(red)虚线和蓝色(blue)虚线的意思。嗯,就是这样,很简单。


    接下来我们继续看一下子图的概念。Matplotlib库可以使用plot方法画图,如果画子图呢,当然使用subplot方法了。下面我们将上面例子中的红色和蓝色虚线画到一个图的两个子图上。代码如下图所示哈:


    造的数据和上面的例子一模一样,subplot(2,1,1)方法的意思是,将一个图划分成2行一列,第三个参数的意思是在第几行上画子图。就解释这一行代码吧,其他代码的意思都一样。画出的子图如下图所示:


    其实matplotlib包中还有一个画子图简单的方法—subplots()。用法如下图所示:


    调用subplots方法,会返回两个对象。为什么会这样,其他编程语言好像没有这么干的,这或许就是python的特点吧。这两个对象是什么呢?第一个figure是图对象,第二个是一个数组,里面放着4个子图对象。这样画出来的图形如下图所示:


先写到这吧,欢迎吐槽。












猜你喜欢

转载自blog.csdn.net/zhengzhoudaxuexujay/article/details/80693462
今日推荐