当前位置: 首页 > article >正文

python自动化制作常规的日报数据可视化

在这里插入图片描述

python自动化制作常规的日报数据可视化

作者:i阿极

作者简介:Python领域新星作者、多项比赛获奖者:博主个人首页

😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关注哦!👍👍👍

📜📜📜如果有小伙伴需要数据集和学习交流,文章下方有交流学习区!一起学习进步!💪


专栏案例:数据可视化分析案例
数据分析:某电商优惠卷数据分析
数据分析:旅游景点销售门票和消费情况分析
数据分析:消费者数据分析
数据分析:餐厅订单数据分析
数据分析:基于随机森林(RFC)对酒店预订分析预测
数据分析:基于K-近邻(KNN)对Pima人糖尿病预测分析
电商用户画像数据可视化分析

文章目录

  • python自动化制作常规的日报数据可视化
  • 1、前言
  • 2、导入数据
  • 3、计算指标
    • 3.1 计算12月相关指标
    • 3.2 计算11月相关指标
    • 3.3 利用函数进行封装
    • 3.4 计算环比
    • 3.5 计算每月的销售额、销量数据情况
  • 4、数据可视化
  • 总结


1、前言

今天,我们就来聊聊如何用Python这一强大的编程语言📝,实现“解放双手,一键运行!Python每日自动生成数据日报”的神奇魔力。本文使用案例数据,构造销售收入、销售单量等关键性指标,借助Python工具一键生成数据日报,下面一起学习吧!💯

在这个快节奏的工作环境中,时间就是金钱💰,效率决定成败。传统的手动制作数据日报,不仅耗时耗力,还容易出错。而Python凭借其简洁的语法、丰富的库支持和强大的自动化能力,正逐步成为数据分析和自动化办公的利器🧰。通过编写几个简单的Python脚本,我们就能让数据自动汇聚、分析,并生成精美的日报,帮助我们在瞬息万变的市场中抢占先机。

2、导入数据

import pandas as pd
from datetime import datetime
df=pd.read_excel(r"D:\mydata\CSDNdata\销售数据明细.xlsx")

df.head()#数据预览

在这里插入图片描述
查看数据属性

df.info()

在这里插入图片描述

查看数据属性,其中销售日期为日期类型,销量和销售额为数值类型,其他均为文本数据类型。

3、计算指标

计算指标设定,设置本文需要计算的指标,指标计算如下:

• 收入=销量*销售额
• 单量=销量汇总
• 货品数=货品数去重
• 收入环比:本月收入/上月收入-1
• 单量环比:本月单量/上月单量-1

3.1 计算12月相关指标

首先选取12月的数据,截止到2021年12月30日的数据,分别计算本月截止12月30日收入、本月截止12月30日单量、本月截止12月30日货品数。

#这里假设数据的时间段时2021年12月1日到2021年12月30日
the_month=df[(df['销售日期']>=datetime(2021,12,1))&(df['销售日期']<=datetime(2021,12,30))]
shouru1=(the_month['销量']*the_month['销售额']).sum()#本月截止12月30日收入
danliang1=the_month['销量'].sum()#本月截止12月30日单量
huopin1=the_month['货号'].nunique()#本月截止12月30日货品数

print("本月截止12月30日收入为{:.2f}元,单量为{}个,货品数为{}个".format(shouru1,danliang1,huopin1))
本月截止1230日收入为369242.50元,单量为728个,货品数为227

3.2 计算11月相关指标

假设数据的时间段时2021年11月1日到2021年11月30日

last_month=df[(df['销售日期']>=datetime(2021,11,1))&(df['销售日期']<=datetime(2021,11,30))]
shouru2=(last_month['销量']*last_month['销售额']).sum()#上月截止11月30日收入
danliang2=last_month['销量'].sum()#上月截止11月30日单量
huopin2=last_month['货号'].nunique()#上月截止11月30日货品数

print("上月截止11月30日收入为{:.2f}元,单量为{}个,货品数为{}个".format(shouru2,danliang2,huopin2))
上月截止1130日收入为654637.10元,单量为886个,货品数为211

3.3 利用函数进行封装

以上我们可以发现规律,计算本月的相关指标数据与计算上月同期的指标数据计算逻辑是一样的,除了数据选取的日期不一样,我们可以自定义一个函数,用于计算相关的数据指标,简化数据计算的流程。

def get_month_data(df):
    shouru=(df['销量']*df['销售额']).sum()
    danliang=df['销量'].sum()
    huopin=df['货号'].nunique()
    return(shouru,danliang,huopin)

shouru1,danliang1,huopin1=get_month_data(the_month)#计算本月数据指标
shouru2,danliang2,huopin2=get_month_data(last_month)#计算上月数据指标

print("本月截止12月30日收入为{:.2f}元,单量为{}个,货品数为{}个".format(shouru1,danliang1,huopin1))
print("上月截止11月30日收入为{:.2f}元,单量为{}个,货品数为{}个".format(shouru2,danliang2,huopin2))

3.4 计算环比

构建一个DataFrame,填入具体的计算指标数值,计算环比数据。

ribao=pd.DataFrame([[shouru1,shouru2],
                   [danliang1,danliang2],
                   [huopin1,huopin2]],
                   columns=['本月','上月'],index=['收入','单量','货品数'])

ribao['环比']=ribao['本月']/ribao['上月']-1
ribao['环比']=ribao['环比'].apply(lambda  x:format(x,'.2%'))

ribao

在这里插入图片描述

3.5 计算每月的销售额、销量数据情况

计算每月的销售额、销售数据情况,使用groupby函数,同时aggregate函数自定义数值的计算方式,数据结果如下。

df['销售月份']=df['销售日期'].astype(str).str[0:7].str.replace('-','')
df_group=df.groupby("销售月份").aggregate({"销售额":"sum","销量":"sum"})

df_group

在这里插入图片描述

4、数据可视化

导入pyecharts库,制作组合图。

#使用pyecharts库作图
from pyecharts import options as opts
from pyecharts.charts import Bar, Line

#导入数据
v1 = df_group['销售额'].round(2).tolist()
v2 = df_group['销量'].tolist()

#柱形图
bar = (Bar()
       .add_xaxis(df_group.index.tolist())
       .add_yaxis("销售额", v1 ,category_gap="60%",gap="10%") #设置柱形间隙宽度
       .extend_axis(yaxis=opts.AxisOpts(axislabel_opts=opts.LabelOpts(formatter="{value} 单"), min_=0,max_=1750))#设置次坐标轴坐标大小
       .set_series_opts(label_opts=opts.LabelOpts(is_show=True))#显示数据标签
       .set_global_opts(title_opts=opts.TitleOpts(title="21年每月销售额与销量情况"),

       )
       )

#折线图
line = Line().add_xaxis(df.index.tolist()).add_yaxis("销售量", v2, yaxis_index=1, is_smooth=True)

#组合图
bar.overlap(line)

#在线显示
bar.render_notebook()

在这里插入图片描述

由图像可以看出,截止21年12月25日数据,21年7月销量最高、12月销量最低、21年10月收入最高、2月收入最低。


总结

通过前面的步骤,我们顺利完成了一份基础的数据日报。这份日报虽能反映关键信息,但在实际工作场景中,数据报表的复杂程度远超于此。实际的数据报表往往涉及繁多的指标,计算逻辑也极为复杂,这就要求数据分析师持续优化计算流程,以确保数据处理的高效与准确。

到这里,我们已经初步体验到 “Python 每日自动生成数据日报” 带来的巨大便利,它真正实现了 “解放双手,一键运行”。从数据的抓取、清洗,到深入分析,再到可视化报告的生成,Python 凭借强大的功能和出色的灵活性,构建起一个高效、精准的数据处理流程。这一流程不仅大幅提升了工作效率,还让我们得以从繁琐的数据整理工作中解脱出来,将更多精力投入到对数据背后深层含义的洞察以及策略制定上。

不过,要达成这样的成果并非轻而易举。掌握 Python 编程是基础,同时,还需要根据具体业务需求,对脚本进行定制与优化。但请坚信,一旦熟练掌握这门技能,Python 必将成为你职业生涯中不可或缺的强大助力,为你在数据领域的探索与发展提供有力支持

📢文章下方有交流学习区!一起学习进步!💪💪💪
📢首发CSDN博客,创作不易,如果觉得文章不错,可以点赞👍收藏📁评论📒
📢你的支持和鼓励是我创作的动力❗❗❗


http://www.kler.cn/a/556572.html

相关文章:

  • SpringBoot:解决前后端请求跨域问题(详细教程)
  • Blender小技巧和注意事项
  • CSS Grid 布局学习笔记
  • vue 判断一个属性值,如果是null或者空字符串或者是空格没有值的情况下,赋值为--
  • 国产编辑器EverEdit - 如何在EverEdit中管理工程?
  • DeepSeek掘金——VSCode 接入DeepSeek V3大模型,附使用说明
  • Unity 适用于单机游戏的红点系统(前缀树 | 数据结构 | 设计模式 | 算法 | 含源码)
  • Unity面板介绍_层级面板(23.1.1)
  • Flutter与移动开发的未来:谷歌的技术愿景与实现路径
  • Perl 面向对象编程指南
  • Webpack的持久化缓存机制具体是如何实现的?
  • http+nginx
  • windows上vscode cmake工程搭建
  • 无人设备遥控器之如何分享数传篇
  • 【uniapp*vue3】app/h5 webview通讯方案
  • 什么是Embedding、RAG、Function calling、Prompt engineering、Langchain、向量数据库? 怎么使用
  • 可视化工具SciChart如何结合Deepseek快速创建一个React仪表板?
  • Unity游戏制作中的C#基础(4)数组声明和使用
  • 机器视觉3D中,深度图与点云图数据对比分析
  • 资本资产定价模型(CAPM, Capital Asset Pricing Model)通俗解析