概述
Python实现可视化(五)--一列多子图、直方图
- python实现子图、直方图
python实现子图、直方图
已知:dataframe中各列分别为lkbh、jkdfx、jssj_sec、kssj_sec、
lst_lkbh = list(df_order['lkbh'])
i = 1
fig = plt.figure(figsize=(9, 18)) # 开始画图
for lk in lst_lkbh:
df_test = df[df['lkbh'] == lk]
for iindex in set(df_test['jkdfx']):
df_sg1 = df_test[df_test['jkdfx'] == iindex]
df_sg1 = df_sg1.sort_values(by='jssj_sec')
i += 1
if i <= 5:
node = set(df_test['lkmc'])
total_distance = list(df_test['kssj_sec'])
bins = np.linspace(np.min(df_test['kssj_sec']), np.max(df_test['kssj_sec']), 60) # 直方图参数
ax = fig.add_subplot(21, 1, i) # 添加子图(分别对应行、列、第几个图)
plt.hist(total_distance, bins, color='lightcoral', edgecolor='gray') # 画直方图
plt.xticks(range(0,86400,7200), labels=['0:00', '2:00', '4:00', '6:00', '8:00', '10:00', '12:00',
'14:00', '16:00', '18:00', '20:00', '22:00']) # 限定x轴刻度
plt.ylabel('周期数')
plt.title(node)
plt.ylim(0, 25)
plt.xlim(0, 86400)
plt.tight_layout() # tight_layout()函数可以调整子图之间的位置至默认最佳。
plt.show()
效果图如下
最后
以上就是无聊服饰为你收集整理的Python实现可视化(五)--一列多子图、直方图python实现子图、直方图的全部内容,希望文章能够帮你解决Python实现可视化(五)--一列多子图、直方图python实现子图、直方图所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复