|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 rsj0315 于 2020-6-4 09:53 编辑
- import pandas as pd
- import matplotlib.pyplot as plt
- #函数
- def to_time(x):
- return int(x[0])+round(int(x[1])/60,2)
- data = pd.read_excel(r'performance.xlsx')
- data['up_time']=data['up_time'].astype('str').str.split(':')
- data['down_time']=data['down_time'].astype('str').str.split(':')
- # 计算开车时间和停车时间
- data['up_time']=data['up_time'].apply(to_time)
- data['down_time']=data['down_time'].apply(to_time)
- #绘制叠加柱状图
- data.plot.bar(x='date',y=['up_time','down_time'],stacked=True)
- #绘制横向的叠加柱状图
- # data.plot.barh(x='date',y=['up_time','down_time'],stacked=True)
- #设置标题
- plt.xlabel('hour',fontsize=12,fontweight='bold')
- plt.ylabel('date_shift',fontsize=12,fontweight='bold')
- plt.xticks(rotation='45',ha='right')
- plt.title ('C line up_time vs dow_time per shift',fontsize=16,fontweight='bold')
- #紧凑型标签
- plt.tight_layout()
- plt.show()
复制代码
|
|