一、matplotlib.pyplot绘图相关的对象:
1、容器类:图(figure)、坐标系(axes)、坐标轴(axis)、刻度(tiok)
2、基础类:线(line)、点(marker)、文本(text)、图例(legend)、网格(grid)、标题(title)
二、绘图的类型:
1、线形图:plot()
2、直方图:hist()
3、条形图:bar()
4、饼图:pie()
5、散点图:seatter()
6、3D图:from mpl_toolkits.mplt3d import Axes3D
7、动态交互图:pyecharts
plt.rcParams['font.family'] = 'kaiti' #设置中文字体格式
plt.plot([1,5,6,2,1],[1,1,2,2,1]) #x坐标在前,y坐标在后,都用数组描述,如果x坐标缺少,默认为0,1,2...
plt.axis([0,6,0,5]) #设置坐标轴的取值范围,前两位数表示x轴,后两位数表示y轴
plt.title('***********') #图表标题
plt.xlabel('课程') #x轴标签默认英文模式
plt.ylabel('成绩')
plt.savefig('../R&Q_pic/test_0.png',dpi = 600) #保存在指定的文件夹里
plt.show()
#同一绘图区域绘制多图 import matplotlib.pyplot as plt import numpy as np x = np.arange(10) #创建一个0到9的整数序列,作为x坐标 plt.plot(x,x*1.5,'go-',label='a') plt.plot(x,x*2,'r+-',label='b') plt.plot(x,x*2.5,'c*',label='c') plt.plot(x,x*3,'bh--',label='d') plt.plot(x,x**2,'ys-',label='e') plt.savefig('../R&Q_pic/test_1.png',dpi = 600) #保存在指定的文件夹里 plt.legend() #显示图例 plt.show() #显示图表
plt.rcParams['font.family'] = 'kaiti' x = np.arange(0,4,0.02) y_1 = np.sin(np.pi*x)+2 y_2 = np.cos(np.pi*x) plt.plot() #多区域绘图 def f(t): return np.exp(-t)*np.cos(2*np.pi*t) a = np.arange(0,5,0.02) plt.subplot(322) #创建多个子区域,3行2列,并将此图表放在第二区域 plt.plot(a,f(a)) plt.subplot(323) #创建多个子区域,3行2列,并将此图表放在第二区域 plt.plot(a,np.cos(2*np.pi*a),'r-.')
plt.rcParams['font.family'] = 'STSong'
years = ['22','23','24','25','26','27','28']
baokao_nums = [122,133,144,155,188,199,190]
luqu_nums = [75,86,82,87,98,75,77]
x = range(len(years))
plt.bar(x,height=baokao_nums,width=0.4) #创建条形图bar()
plt.bar([i + 0.4 for i in x],luqu_nums,width=0.4) #用列表推导式循环取x坐标值
plt.xticks([i + 0.2 for i in x],years) #用列表推导式循环取x坐标刻度,横坐标对应位置显示的内容
plt.legend(['研究生报考人数','研究生录取人数'])
plt.ylabel('人数/万人')
plt.xlabel('年份')
plt.title('研究生历年报考和录取情况')
plt.savefig('../R&Q_pic/test3',dpi=600)
plt.show()