第二天更新
今天我们来学习怎么使用matplotlib和numpy来做一个简单的图像。
先从代码入手,代码介绍如下:
我们要做一个y=xx的图像,也就是初中经常学的一元二次函数的图像。
x是一个等差数列,从【-5,5】共50个数。
y=xx。
下面来简单介绍使用matplotlib绘画的基本步骤。
-
引入matplotlib.pyplot,具体代码
import matplotlib.pyplot as plt
-
因为目前我们初步学习一般是绘画二维图像,也就是一定要有x,y。给x,y初始化,我们这里的x是一个等差数列,之前介绍过了。
-
调用plt.plot(x,y)。【plot翻译过来是绘制,也就是开始绘制x,y】
-
显示图像,调用plt.show()。
这里可能会有疑问那plt.figure()是干嘛的?下一个程序给你解释,不急。
plt.figure()可有可无,但是没有的话就默认一个程序所有的绘制都是在一个图像上面进行,这样一般不太好,所以我建议大家还是带上比较好!!!
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author : SundayCoder-俊勇
# @File : figure0.py
# 以后基本都是以这种方式使用matplotlib和numpy。
import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(-5,5,50)
y=x*x
plt.figure()
plt.plot(x,y)
plt.show()
这里写图片描述
下面来解释一下plt.figure()是干嘛?
figure翻译过来是图像的意思,大家有没有注意到程序截图左上方有个figure1这就是一个图像。
有时候一个程序里面可以绘制几个图像。
有几个图像就有几个几个plt.figure()。
下面来看一个例子:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author : SundayCoder-俊勇
# @File : figure0.py
# 以后基本都是以这种方式使用matplotlib和numpy。
import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(-5,5,50)
y=x*x
# 第一幅图像绘制x*x,一个plt.figure()下的所有东西都是这个图像的,直到遇到下一个plt.figure()。
plt.figure()
plt.plot(x,y)
#以上是第一幅图像的全部内容。
# 这里是第二幅图像绘制2*x+1
plt.figure()
y1=2*x+1
plt.plot(x,y1)
#以上是第二幅图像的全部内容。
plt.show()
运行结果:
这里写图片描述
下面对plt.figure()函数做一个讲解,最常用的参数是num,和figsize。
num代表的就是图像的顺序,例如上面两个图像,由于没有指定参数,自动从1开始。
figsize是图像的显示大小,它的赋值类似坐标(a,b)。a代表长,b代表宽。
下面做一个实验,之前第一幅图像绘制的是x*x,我们改变他的图像顺序和显示大小。
再来比较结果。
import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(-5,5,50)
y=x*x
# 第一幅图像绘制y=x*x
plt.figure(num=3,figsize=(10,10))
plt.plot(x,y)
# 这里是第二幅图像绘制一元一次函数y=2*x+1
plt.figure()
y1=2*x+1
plt.plot(x,y1)
plt.show()
结果:
这里写图片描述
现在图片从3开始,并且第一张图片显示大小是10*10的正方形。
plt.figure()就讲解到这里结束。
你会用matplotlib画一个简单的图像了吗?
网友评论