俗话说,“字不如表,表不如图”,图表在数据分析中的作用不言而喻。python中有pandas和matplotlib两个库供使用者来绘制图表。下面来绘制“成绩表.xlsx”的折线图。
废话不多说,直接上代码:
import pandas as pdimport matplotlib.pyplot as plt#导入excel文件df=pd.read_excel('C:/Users/CC/Desktop/python数据可视化/zixue/成绩表.xlsx')print(df)df#取df中某一列数据x=df['姓名']y1=df['语文']y2=df['数学']y3=df['英语']y4=df['物理']y5=df['化学']#解决中文乱码plt.rcParams['font.sans-serif']=['SimHei']#设置画布宽度plt.figure(figsize=(8,7))#绘制折线图plt.plot(x,y1,label='语文',color='r',marker='p')plt.plot(x,y2,label='数学',color='g',marker='p',linestyle='--')plt.plot(x,y3,label='英语',color='b',marker='p',linestyle='-.')plt.plot(x,y4,label='物理',color='y',marker='p',linestyle='-.')plt.plot(x,y5,label='化学',color='r',marker='p',linestyle='--')plt.grid()#plt.grid(axis='y' 关闭y轴网格线)#设置坐标轴的标题plt.ylabel('分数')plt.xlabel('姓名')#设置图例plt.legend(['语文','数学','英语','物理','化学'])#设置坐标轴的刻度plt.yticks(range(80,150,10))#显示图表plt.show()
对上述重要函数的参数进行详细讲解:
plot函数:以plt.plot(x,y2,label=’数学’,color=’g’,marker=’p’,linestyle=’–‘)为例
[x,y2]为数据域,一般x轴在前,y轴在后;label为该线条的标记(名称);color为线条颜色,有红色(red–‘r’,green-‘g’,blue-‘b’,yellow-‘y’等);linestyle为线条的类型(默认为直线,还有“–”,‘“-.”等)。
看看效果图: