透视表可视化简单案例

复制代码
import pandas as pd
import numpy as np
import os
basepath='/Users/kangyongqing/Documents/kangyq/202307/标准版学期制C2/'

path=os.path.join(basepath,'02freetime.csv')
dt=pd.read_csv(path,dtype={'shifen':'object'})
print(dt.head())
import matplotlib.pyplot as plt

for i in range(1,8):
    dtt=dt[dt['dttype']==i]
    pvt=dtt.pivot_table(values='tutor_user_id',index='shifen',aggfunc='count')
    #数据透视表
    print(pvt)
    x=pvt.index
    y=pvt['tutor_user_id']
    #x,y赋值
    fig=plt.figure(figsize=(20,8))
    #设置画布大小
    p1=plt.bar(x,y,label='freetutorcnt',color='blue')
    #做条形图,添加图例,设置颜色
    plt.legend(loc=1)
    plt.xticks(fontsize=6)
    #设置X轴字体大小
    plt.bar_label(p1,labels=y,padding=0.2)
    #添加y值为数据标签
    plt.title(f'workday{i}')
    #添加标题
    plt.savefig(basepath+"可视化/星期"+f"{i}.png")
    #save要在show之前,因为show会自动调用clear()清除缓存
    plt.show()

结果展示:

附数据源

相关推荐
一位代码2 分钟前
微软开源项目MarkitDown:一款将pdf/word/ppt等各类文件转换为Markdown格式的python工具
python
Unbelievabletobe7 小时前
解决了股票api接口盘后数据更新慢的问题
大数据·开发语言·python
lpd_lt8 小时前
AI Coding的常用Prompt技巧
python·ai·ai编程
小江的记录本8 小时前
【JVM虚拟机】堆内存分代模型:年轻代(Eden+Survivor)、老年代、元空间Metaspace(附《思维导图》+《面试高频考点清单》)
java·前端·jvm·后端·python·spring·面试
在繁华处8 小时前
Java从零到熟练(三):流程控制
java·开发语言·python
asdzx679 小时前
使用 Python 快速提取 PDF 中的表格
python·pdf
无情的西瓜皮9 小时前
MCP协议实战:用Python从零搭建一个AI Agent工具服务器(保姆级教程)
服务器·人工智能·python·mcp
岁月宁静10 小时前
驾驭 AI 这匹野马:深入解析智能体 Harness 工程
vue.js·python
星恒随风11 小时前
Python 基础语法详解(一):从表达式、变量到数据类型
开发语言·笔记·python·学习
888CC++11 小时前
java 并发编程
java·开发语言·python