# dailywork_visual **Repository Path**: rain_heart/dailywork_visual ## Basic Information - **Project Name**: dailywork_visual - **Description**: No description available - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-12-07 - **Last Updated**: 2024-12-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 主播数据分析项目 ## 项目概述 - 项目背景:基于直播平台数据,分析主播运营情况和业绩表现 - 项目目标:通过数据分析提供运营决策支持,优化主播管理策略 - 开发进展:正在进行数据分析系统的开发和优化 ## 数据库结构 ### 总体情况 - 数据库规模:5张表 - Schema分布:dbo - 核心表:Anchors_List(主播信息表)、Anchors_Waters(流水记录表) - 数据量: * Anchors_List:369,287行 * Anchors_Waters:13,906,211行 ### 核心业务表 #### 1. 主播信息表(Anchors_List) - 表用途:存储主播的基础信息和属性数据 - 更新周期:月度更新 - 核心字段: * 年月:数据所属年月 * 后台ID:主播唯一标识(最大长度30) * 抖音ID:平台账号标识 * 昵称:主播显示名称 * 入驻时间:开始合作时间 * 签约情况:合作关系类型 * 所属分公司:组织归属 * 招募:在合作初期或前期,与主播建立联系的人 * 运营:与主播达成三方合作关系后,负责主播运营的人 * 进入核心组月份:首次达到月流水50000的时间 * 总流水:当月流水 * 总时长:当月直播时长 * 有效天:当月有效直播天数 * 后台状态:合作关系状态 #### 2. 流水记录表(Anchors_Waters) - 表用途:记录主播每日直播数据 - 更新周期:每日更新 - 核心字段: * 日期:数据日期 * 后台ID:关联主播信息 * 流水:直播营收(元) * 时长:直播时长(小时) * 有效天:是否为有效直播日(0/1) ### 表关系说明 - 实体关系: * Anchors_List(主表)1:N Anchors_Waters(明细表) * 通过后台ID字段关联 - 数据流向: * 主播基础信息 → Anchors_List * 每日直播数据 → Anchors_Waters - 关联规则: * 每个主播可以有多条直播记录 * 每条直播记录必须对应一个有效主播 * 后台ID作为关联键确保数据完整性 ## 业务指标说明 ### 核心指标 - 流水: * 定义:直播营收金额 * 单位:元 * 统计周期:日/月 - 时长: * 定义:直播时长 * 单位:小时 * 统计周期:日/月 - 有效天: * 定义:有效直播日计数 * 判定标准:单日至少一场直播连续开播一小时,无须用户判断,0/1代表判断结果 * 取值:0或1 ### 业务规则 - 数据更新规则: * Anchors_List:月度更新主播基础信息 * Anchors_Waters:每日更新直播数据 * 保持后台ID的一致性和有效性 - 业务约束条件: * 核心组判定:月流水达到50000即为核心组成员 * 角色职责: * 招募:负责前期接洽,与潜在主播建立合作关系 * 运营:负责[签约]主播的日常运营管理和业绩提升 ## 开发文档 ### 文档结构 - docs/ * database_analysis.md:数据库结构分析 * knowledge_base.md:主播数据分析知识库 * prompt.md:开发提示词 ### 开发工具 #### PySQLConnect.py - 用途:本地数据库连接示例代码(仅供参考,不可修改) - 主要功能: * 数据库连接配置 * Select:执行查询操作 * Insert:批量插入DataFrame数据 * Update:执行更新操作 * Delete:执行删除操作 - 技术特点: * 使用pymssql驱动 * 支持pandas DataFrame的数据操作 * 包含基本的异常处理 ## 项目进展 - 当前阶段:数据分析系统开发阶段 - 已完成工作: * 数据库结构分析 * 核心指标定义 * 基础文档建设 - 待开发功能: * 数据分析模块 * 可视化展示 * 自动化报表 ## 更新日志 ### 2024-12-07 - 创建项目基础文档 - 完成数据库结构分析 - 建立核心指标体系 ### 2024-12-08 - 解决pyecharts图表数据错位问题 * 发现问题:折线图数据点与X轴刻度不对齐 * 分析过程:从图表配置到数据处理,最终定位到X轴数据类型问题 * 解决方案: * 将X轴数据统一转换为字符串类型 * 遵循pyecharts的数据添加规范,先设置X轴数据,再添加Y轴数据 * 技术要点: * Line图表的X轴数据必须是字符串类型 * add_xaxis应在所有add_yaxis之前调用 * 保持所有数据系列与X轴的对齐 * 确保数据的完整性和连续性 * 经验总结: * 使用可视化库时,需要严格遵守数据类型要求 * 对于pyecharts,X轴标签必须是字符串,这是一个强制要求 * 在处理数值型数据作为X轴标签时,记得进行类型转换 ### 2024-12-09 - 完成图表生成模块重构 * 实现了图表工厂模式 * 分离了配置与业务逻辑 * 优化了代码结构和复用性 * 主要改进: * 创建配置类管理图表样式 * 实现工厂类处理图表创建 * 支持灵活的数据处理 * 简化了图表创建接口 * 技术要点: * 使用@dataclass简化配置类设计 * 实现配置的继承和组合 * 支持pandas.Series数据输入 * 优化了数据聚合逻辑 * 经验总结: * 配置与逻辑分离提高了代码可维护性 * 工厂模式简化了图表创建过程 * 类型提示改善了代码可读性 * 接口设计影响使用体验 ## 开发任务 ### 1. 创建折线图来比较不同时期的流水数据 - 开发中 #### 任务目标 - 生成三个月份流水数据的对比折线图 - 按分公司、小组分别生成图片 - 快速查看数据趋势 #### 开发步骤 ##### 1. 数据获取 - SQL查询开发 * 目标:获取三个时间段的日流水数据 * 时间:2024.12、2024.09、2023.12 * 维度:分公司、小组 ##### 2. 数据处理 - 数据聚合 * 分公司维度:日期+分公司分组 * 小组维度:日期+小组分组 * 聚合指标:sum(流水) ##### 3. 可视化实现 - 使用pyecharts创建折线图 - 基本配置: * 图表类型:Line * 基本样式:折线颜色、阴影效果 * 图例位置:右上角 ##### 4. 输出文件 - 图片格式:PNG - 命名规则:{organization_type}_{organization_name}_trend_{YYYYMMDD}.png #### 注意事项 - 确保数据完整性 - 图片清晰度要求 - 合理的图表比例 #### 验收标准 - 图表内容完整 - 显示效果清晰 - 文件命名规范 ### 2. 图表生成模块重构 - 已完成 #### 设计思路 - 目标:将图表配置与数据处理逻辑分离,提高代码复用性 - 架构设计: * 配置模块:管理图表的样式和行为配置 * 工厂模块:提供统一的图表创建接口 * 工具模块:提供数据处理和辅助功能 #### 预期优势 - 配置和逻辑分离,便于维护 - 提高代码复用性 - 支持更灵活的数据处理 - 便于扩展新的图表类型 - 统一的接口设计 ### 3. 数据可视化布局优化 - 待开发 #### 现状问题 - 图表分散输出,空间利用率低 - 缺乏交互式筛选功能 - 图表之间缺乏关联性 - 不便于数据对比分析 #### 优化目标 - 实现多图表组合布局 - 添加交互式筛选功能 - 支持图表联动效果 - 提高空间利用率 - 增强数据对比体验 #### 技术方案 ##### 布局设计 - 使用Grid布局实现多图表组合 - 使用Tab组件实现分类切换 - 使用Timeline实现时间维度切换 - 添加DataZoom支持数据范围筛选 ##### 交互设计 - 支持���组、分公司多维度筛选 - 支持时间范围选择 - 实现图表联动效果 - 添加数据缩放功能 #### 技术难点 - 大数据量下的性能优化 - 多图表联动的事件处理 - 布局自适应的实现 - 筛选条件的状态管理 - 数据更新时的图表刷新 #### 开发步骤 1. 数据结构优化 - 重新设计数据组织方式 - 优化数据加载逻辑 - 实现数据缓存机制 2. 布局系统开发 - 实现Grid布局框架 - 开发Tab切换组件 - 集成Timeline组件 - 添加筛选器组件 3. 交互功能实现 - 开发筛选逻辑 - 实现图表联动 - 添加缩放控制 - 优化刷新机制 4. 性能优化 - 实现数据懒加载 - 优化渲染性能 - 添加缓存机制 - 控制更新频率 #### 验收标准 - 布局合理,空间利用率高 - 筛选功能完整且易用 - 图表联动效果流畅 - 大数据量下性能表现良好 - 交互体验流畅自然