信息工程系实验报告
实验一: python的图表绘制
实验时间: 2019/3/27
实验地点: 实训室
实验步骤
- 饼图:
# -* coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
#导入图像库
import matplotlib.pyplot as mpt
#用来正常显示中文标签
mpt.rcParams['font.sans-serif']=['SimHei']
#用来正常显示负号
mpt.rcParams['axes.unicode_minus']=False
mpt.figure()#开始绘图
label='peachblossom','rose','mum','lavender'
size=[20,35,20,25]
color=['pink','red','yellow','purple']
explode=(0,0,0.1,0)
mpt.pie(size,explode=explode,labels=label,colors=color,autopct='%1.1f%%',shadow=True)
mpt.axis('equal')
mpt.show()
效果展示:
- 二维线性图:
# -*- coding: utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import matplotlib.pyplot as plt
import pandas as pd
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.figure()
dish_profit = u'D:/2345下载/catering_dish_profit.xls'
data = pd.read_excel(dish_profit,index_col = '月份')
data=data['流量统计'].copy()
data.plot(kind='bar')
plt.subplot(211)
plt.ylabel(u'流量统计(G)')
data.plot(color = 'r', style = '-o',linewidth = 2)
plt.subplot(212)
plt.ylabel(u'流量统计(比例)')
p = 1.0*data.cumsum()/data.sum()
p.plot(color = 'b',style = '-*',linewidth = 2)
plt.show()
效果展示:
【三】:直方图
# -* coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import numpy as np
import matplotlib.pyplot as plt
#用来正常显示中文标签
plt.rcParams['font.sans-serif']=['SimHei']
#用来正常显示负号
plt.rcParams['axes.unicode_minus']=False
from matplotlib import mlab
from matplotlib import rcParams
fig1 = plt.figure(2)
rects1 =plt.bar(left = (0.2),height = (0.5),color=('g'),label=(('含鲑鱼+鲢鱼的数量')),width = 0.2,align="center",yerr=0.000001)
rects2 =plt.bar(left = (1),height = (1),color=('r'),label=(('含草鱼+鲢鱼的数量')),width = 0.2,align="center",yerr=0.000001)
plt.legend()
plt.xticks((0.2,1),('xihu','changjiang'))
plt.title('Pe')
def autolabel(rects):
for rect in rects:
height = rect.get_height()
plt.text(rect.get_x()+rect.get_width()/2., 1.03*height, '%s' % float(height))
autolabel(rects1)
autolabel(rects2)
plt.show()
效果展示图:
- 散点图:
# -* coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import random
import numpy as np
import matplotlib.pyplot as plt
#用来正常显示中文标签
plt.rcParams['font.sans-serif']=['SimHei']
#用来正常显示负号
plt.rcParams['axes.unicode_minus']=False
a = range(0,100,1)
b = random.sample(a, 36)
c = random.sample(a, 36)
print(b)
print(c)
plt.scatter(b,c)
plt.scatter(b,c,color = 'yellow') #改变点的颜色
plt.show()
效果展示:
【五】:箱线图
# -* coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import matplotlib.pyplot as plt
import pandas as pd
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
#添加成绩表
plt.style.use("ggplot")
#新建一个空的DataFrame
df=pd.DataFrame()
#添加成绩单,最后显示成绩单表格
df["English"]=[76,90,97,71,70,93,86,83,78,85,81]
df["Math"]=[65,95,51,74,78,63,91,82,75,71,55]
df["Chinese"]=[93,81,76,88,66,79,83,92,78,86,78]
plt.boxplot(x=df.values,labels=df.columns,whis=1.5)
plt.show()
效果展示: