前言
Matplotlib画图工具的官网地址是 http://matplotlib.org/
Python环境下实现Matlab制图功能的第三方库,需要numpy库的支持,支持用户方便设计出二维、三维数据的图形显示,制作的图形达到出版级的标准。
其他matplotlib文章
python--matplotlib(1)_码银的博客-CSDN博客
python--matplotlib(2)_码银的博客-CSDN博客
实验环境
Pycharm2020.2.5社区版,win11
正文
1.散点图
import numpy as np from pylab import * a=np.random.normal(0,10,100) b=np.random.normal(0,1,100) scatter(a,b,s=10,c='green') show()
绘制散点图要注意num(a)=num(b),即a的数量等于b的数量;
scatter(x,y,s=10,c='green'),用来绘制散点图的函数,s代表散点图中(点)圆圈的大小,c代表圆圈的的颜色。
np.random.normal(0,1,100):提供服从正态分布的数据,看下面的例子:
import numpy as np y=np.random.normal(0,1,100) print(y)
0:正态分布的均值,0就是y轴的位置。
1:正态分布的标准差,数字越大,正态分布越矮胖;数字越小,正太分布曲线越高瘦。
中间这个数据可以是零,大不了点都集中在中心呗,负数不可以。
100:数据数量,上图中提供100个数据。
2. 柱图
import numpy as np import matplotlib.pyplot as plt plt.figure(figsize=(6,5)) data = np.random.randint(1,8,10) print(data) x= np.arange(len(data)) plt.bar(x+1,data,alpha=1,color='green',width=0.2) plt.show()
加标题等情况使用中文:
import matplotlib as mpl
mpl.rcParams['font.family']='sans-serif'#显示无衬线字体
mpl.rcParams['font.sans-serif']=[u'SimHei']#显示中文
上面的和下面的这几句不用都使用,使用一个就行,要是不行,那就再想想办法吧。
plt.rcParams["font.sans-serif"] = ["SimHei"]# 正确显示中文和负号
plt.rcParams["axes.unicode_minus"] = False
x= np.arange(len(data))
plt.bar(x,data,alpha=1,color='green',width=0.2)
分别是x轴,y轴, 柱形颜色深浅,柱形的颜色,柱形的宽度
3.柱形图加折线
import numpy as np import matplotlib.pyplot as plt plt.figure(figsize=(6,5)) data = np.random.randint(1,8,10) print(data) x= np.arange(len(data)) plt.plot(x+1,data,color='r') plt.bar(x+1,data,alpha=1,color='green',width=0.5) plt.show()
plt.plot(x+1,data,color='r'),画折线的代码,加上即可。