画图之小试牛刀

import pandas as pd
import matplotlib.pyplot as plt
catering_sale = "./data/catering_sale.xls"
data = pd.read_excel(catering_sale, index_col = '日期')
# print(data.describe())
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.figure()
p = data.boxplot(return_type = 'dict')
x = p['fliers'][0].get_xdata()
y = p['fliers'][0].get_ydata()
y.sort()
for i in range(len(x)):
if i > 0:
plt.annotate(y[i], xy = (x[i],y[i]), xytext=(x[i] + 0.05 - 0.8 / (y[i] - y[i-1]), y[i]))
else:
plt.annotate(y[i], xy = (x[i],y[i]), xytext=(x[i] + 0.08, y[i]))
plt.title('3142',fontsize=20)
plt.show()

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
catering_sale = "./data/catering_fish_congee.xls"
data = pd.read_excel(catering_sale, names=['date','sale'])
bins = [0,500,1000,1500,2000,2500,3000,3500,4000]
labels = ['[0,500)','[500,1000)','[1000,1500)','[1500,2000)','[2000,2500)',
'[2500,3000)','[3000,3500)','[3500,4000)']
data['sale分层'] = pd.cut(data.sale, bins, labels=labels)
aggResult = data.groupby(by=['sale分层'])['sale'].agg(sale=np.size)
pAggResult = round(aggResult/aggResult.sum(),2) * 100
plt.figure(figsize=(10,6))
pAggResult['sale'].plot(kind='bar',width=0.8,fontsize=10)
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.title('3142',fontsize=20)
plt.show()

import pandas as pd
import matplotlib.pyplot as plt
catering_dish_profit = './data/catering_dish_profit.xls'
data = pd.read_excel(catering_dish_profit)
x = data['盈利']
labels = data['菜品名']
plt.figure(figsize=(8,6))
plt.pie(x,labels=labels)
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.title('3142',fontsize=20)
plt.axis('equal')
plt.show()
x = data['菜品名']
y = data['盈利']
plt.figure(figsize=(8,4))
plt.bar(x,y)
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.xlabel('菜品')
plt.ylabel('销量')
plt.title('3142',fontsize=20)
plt.show()

posted @ 2023-02-26 21:40  我刚好路过  阅读(20)  评论(0)    收藏  举报