按照图片要求写出Python语言代码
import matplotlib.pyplot as plt
import matplotlib as mpt
plt.figure(figsize=(10, 6))
mpt.rcParams['font.family']='fangsong'
labels='贪污','故意伤害','受贿','其他','挪用公款','故意杀人'
sizes=[10.86,13.14,14.28,46.30,5.71,9.71]
explode=(0.1,0.1,0.1,0.1,0.1,0.1)
plt.pie(sizes,explode=explode,labels=labels,autopct='%1.1f%%',shadow=False,startangle=90)
plt.axis('equal')
plt.legend(loc='upper right')
plt.title('2009-2014年度改判发回案件罪名分布情况')
plt.savefig('F:/python/2009-2014年度改判发回案件罪名分布情况.png')
plt.show()
import xlwt
work_book=xlwt.Workbook(encoding='utf-8')
sheet=work_book.add_sheet('2009-2014年度改判发回案件罪名分布情况')
sheet.write(0,0,'改判后结果')
sheet.write(0,1,'受贿罪')
sheet.write(0,2,'故意伤害罪')
sheet.write(0,3,'贪污罪')
sheet.write(0,4,'故意杀人罪')
sheet.write(0,5,'挪用公款罪')
sheet.write(0,6,'其他罪')
sheet.write(1,0,'有罪')
sheet.write(1,1,'24')
sheet.write(1,2,'23')
sheet.write(1,3,'14')
sheet.write(1,4,'17')
sheet.write(1,5,'8')
sheet.write(1,6,'81')
sheet.write(2,0,'无罪')
sheet.write(2,1,'1')
sheet.write(2,2,'0')
sheet.write(2,3,'5')
sheet.write(2,4,'0')
sheet.write(2,5,'2')
sheet.write(2,6,'0')
work_book.save('F:/python/2009-2014年度改判发回案件罪名分布情况.xls')
表头 | 表头 |
---|---|
单元格 | 单元格 |
单元格 | 单元格 |
第5题要求的细节比较多,调节了一下,饼图颜色取了一下近似值
import matplotlib.pyplot as plt
import pandas as pd
index=['受贿罪','故意伤害罪','贪污罪','故意杀人罪','挪用公款罪','其他'] #罪名
total = 175 #总数
nums = [25,23,19,17,10] #数量
innocent = [1,0,5,0,2,0] #无罪
nums.append(total-sum(nums))
df = pd.DataFrame({ '案件数':nums, '改判无罪数':innocent},index=index)
df.index.name = '罪名'
df.to_excel('F:\\python\\2009-2014年度改判发回案件罪名分布情况.xlsx')
plt.rcParams['axes.unicode_minus']=False
plt.rcParams['font.sans-serif']=['SimHei']
percent = [round(n/total,4) for n in nums]
explode=(0.1,0.1,0.1,0.1,0.1,0.1)
colors = ['blue','red','#fe814e','green','yellow','#ffa40a']
plt.pie(percent,explode=explode,labels=index,autopct='%.2f%%',shadow=False,colors=colors)
plt.axis('equal')
plt.legend(loc='lower right')
plt.title('2009-2014年度改判发回案件罪名分布情况',bbox=dict(ec='black',fc ='#cacaca'))
plt.savefig('F:\\python\\2009-2014年度改判发回案件罪名分布情况.png')