1、线形图:plot()
2、直方图: hist()
3、条形图:bar ()
4、饼图: pie()
5、3D图:from mpl_toolkits.mplt3d import Axes3D
6、动态交互图:pyecharts
#1、线性图:plot()
#plt.plot([0,1,2,3,4],[4,8,6,9,10])
#plt.plot([4,6,7,8,10],[6,10,8,11,12])
#绘制平行四边形
plt.rcParams['font.family'] = 'kaiti' #设置中文字体格式
plt.plot([2,5,6,3,2],[2,2,4,4,2]) #x坐标在前y坐标在后,都用数组描述,如果x坐标缺少,默认为0,1,2,...
plt.axis([0,8,0,8]) #设置坐标轴的取值范围,前两位数表示x轴,后两位表示y轴
plt.xlabel("课程") #默认英文模式
plt.ylabel("成绩")
plt.title("立达学院数字科学学院各课程成绩") #图表标题
plt.savefig('../R&Q_pic/test_0.png',dpi = 600) #保存在指定的文件夹里
plt.show() #显示图表
#2、直方图:hist()
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.family'] ="STSong"
datas_1 = 10 + np.random.randn(1000) #随机生成1000个数
datas_2 = 12 + np.random.randn(1000) #随机生成1000个数
plt.hist(datas_1, bins=30)
plt.hist(datas_2, bins=30,alpha=0.4)
plt.legend(["以10为中心的正态分布","以12为中心的正态分布"])
plt.title("直方图")
plt.xlabel("区间")
plt.ylabel("频数")
plt.savefig('../R&Q_pic/test6',dpi=600)
plt.show()
#3、条形图,bar()
import matplotlib.pyplot as plt
plt.rcParams['font.family'] ='STsong'
years =["2014","2015","2016","2017","2018","2019"]
baokao_nums =[172,164.9,177,201,238,290]
luqu_nums=[54.87,57.06,58.98,72.22,76.25,79.3]
x = range(len(years))
plt.bar (x,height=baokao_nums,width=0.4)
plt.bar([i + 0.4 for i in x],luqu_nums,width=0.4)
plt.xticks = ([i + 0.2 for i in x],years)
plt.legend(["研究生报考人数","研究生录取人数"])
plt.ylabel("人数/万人")
plt.xlabel("年份")
plt.title("研究生历年报考和录取情况")
plt.savefig('../R&Q_pic/test7',dpi=600)
plt.show()
#4饼图
#5、3D图: from mpl_toolkits.mplt3d import Axes3D
#示例:绘制s=sin(sqrt(x2+y'2))/sqrt(x2+y2)的图像
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure (num = '3D绘图',figsize=(12,6))
ax = Axes3D(fig,auto_add_to_figure=False)
fig.add_axes(ax)
x,Y = np.mgrid[-20:20:100j,-20:20:100j] #生成代表X轴和Y轴数据的列表,并进行网格化 z=np.sin(np.sqrt(X**2+Y**2))/np.sqrt(X**2+Y**2)
#Z =np.sin(np.sqrt(X**2+y**2))
#绘制三维图
surf = ax.plot_surface (X,Y,z,rstride=1,cstride=1,cmap=plt.get_cmap('rainbow')) #指定行列宽度和颜色胶射
ax.set_zlim(-0.5,1) #设置Z轴范围
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('z')
plt.title('$z=sin(sqrt(x^2+y^2))/=qrt(x2+y^2)$的三维图形')#设置标题
fig.colorbar(surf,shrink=0.5,aspect=5)
plt.savefig('../R&Q_pic/test8',dpi=600)
plt.show()
#6动态交互图