图表能帮助我们更好的反映出数据的信息,无论是论文还是博客都需要用到,所以非常有必要先学习一下。
matplotlib.pyplot
在python中,使用matplotlib库中的pyplot模块进行绘图。
1.最简单的使用
import matplotlib
.pyplot as plt
plt
.plot([
4,
3,
2,
1])
plt
.show()
输出结果: 说明:
当只给出单个数组时plot()会默认是
y
y
轴数值,
xx轴数值则会被默认从0开始依次递增。默认图形颜色为蓝色,线条是实线,该参数是’b-‘,’b’表示蓝色,’-‘表示实线。将plot()替换成scatter()用于显示散点图,散点图已经确定了形状是圆点,故不能指定形状,但可以指定颜色和圆点的尺寸。
x=np.arange(
1,
9,
1)
#生成从1到9的数组,最后一个参数代表步长
plt.scatter(x,x,
color=
'green',linewidths=
0.01)
plt.scatter(x,x**
2,
color=
'blue',linewidths=
3)
plt.show()
2.增加标签、题目和颜色
import matplotlib.pyplot
as plt
plt.plot([
4,
3,
2,
1],[
5,
7,
4,
9],
'r--')
plt.xlabel(
'x numbers')
plt.ylabel(
'y numbers')
plt.title(
"Test figure")
plt.show()
输出结果: 说明:
使用plt.axis()接受形如[xmin,xmax,ymin,ymax]的参数,指定了X,Y轴坐标的范围。
3.在一张图中绘制多个线条
import matplotlib.pyplot
as plt
import numpy
as np
x=np.arange(
1,
9,
1)
plt.plot(x,x,
'ro',x,x**
2,
'gs',x,x*
3,
'y^',x,x*
2,
'bv')
plt.axis([
0,
6,
0,
50])
plt.xlabel(
'x numbers')
plt.ylabel(
'y numbers')
plt.title(
"Test figure")
plt.show()
输出结果:
4.为每条线打标签
import matplotlib.pyplot
as plt
import numpy
as np
x=np.arange(
1,
9,
1)
plt.plot(x,x,
'ro',label=
'a')
plt.plot(x,x**
2,
'gs',label=
'b')
plt.plot(x,
3*x,
'y^',label=
'c')
plt.plot(x,
2*x,
'bv',label=
'd')
plt.legend()
plt.show()
结果输出:
5.处理多图片排版问题
import matplotlib.pyplot
as plt
import numpy
as np
x=np.arange(
1,
9,
1)
plt.subplot(
221)
plt.plot(x,x,
'ro',label=
'a')
plt.subplot(
222)
plt.plot(x,x**
2,
'gs',label=
'b')
plt.subplot(
223)
plt.plot(x,
3*x,
'y^',label=
'c')
plt.subplot(
224)
plt.plot(x,
2*x,
'bv',label=
'd')
plt.show()
输出结果: 说明:
plt.subplot(221)与plt.subplot(2,2,1)的含义相同,都表示将一个大图分割成2*2的四个小图,而1表示显示在第一小图中。