Matplotlib é uma biblioteca de terceiros que fornece plotagem de dados. Familiarize-se e domine o uso básico da biblioteca matplotlib, desenhe gráficos intuitivos para um conjunto de dados. Em seguida, use a biblioteca matplotlib para desenhar gráficos de linha, histogramas e gráficos de pizza com base nos dados do arquivo CSV e salve-os no disco do computador em formato de imagem.
A descrição do problema é a seguinte:
Abra o arquivo de pontuação do aluno test.csv (ou outros arquivos), extraia os dados, crie quatro subgráficos, desenhe um histograma e um gráfico de linha para o nome e os dados de pontuação do computador e conte as pontuações totais e médias de cada aluno, e desenhe o histograma de pontuação total e o gráfico de pizza de média de notas. Ao realizar cálculos de processamento de dados, é necessário usar a biblioteca pandas.A biblioteca pandas é muito conveniente para processar arquivos CSV.
O código do programa é o seguinte:
#提取成绩文件数据绘制图形
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif']=['SimHei']
fr =pd.read_csv("test.csv",header=0,encoding='gbk')
xm=fr['姓名']
ji=fr['计算机']
zc=fr['总成绩']=fr['计算机']+fr['英语']+fr['数学']
fr['平均成绩']=fr['总成绩']/(fr.shape[1]-2)
fr['平均成绩'] = fr['平均成绩'].apply(lambda x: format(x, '.2f'))
pj=fr['平均成绩']
fr.to_csv('testf1.csv',index=None)
plt.figure()
plt.subplots_adjust(wspace=0.4,hspace=0.5)#调整子图之间的位置,防止子图之间覆盖
plt.subplot(221)
plt.bar(xm,ji)
for a,b,i in zip(xm,ji,range(len(xm))):
plt.text(a,b+0.01,ji[i],ha='center',fontsize=10)
plt.ylabel('计算机成绩')
plt.xlabel('姓名')
plt.title('计算机成绩柱状图')
plt.subplot(222)
plt.plot(xm,ji)
plt.ylabel('计算机成绩')
plt.xlabel('姓名')
plt.title('计算机成绩折线图')
plt.subplot(223)
plt.bar(xm,zc,color='purple')
for a,b,i in zip(xm,zc,range(len(xm))):
plt.text(a,b+0.01,zc[i],ha='center',fontsize=10)
plt.ylabel('总成绩')
plt.xlabel('姓名')
plt.title('总成绩柱状图')
plt.subplot(224)
plt.pie(pj,labels=xm,autopct='%2.2f%%')#显示的百分比保留两位小数
plt.title('平均成绩饼状图')
plt.savefig('成绩分析.png')
plt.show()
O resultado da execução do programa é o seguinte:
Se você tiver alguma dúvida, deixe uma mensagem para tirar dúvidas e o blogueiro responderá o mais breve possível.
Amigos que virem isso, não se esqueçam de dar um joinha para o blogueiro!
Siga os blogueiros para aprender conhecimentos de programação Python mais úteis!