透视表可视化简单案例

复制代码
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()

结果展示:

附数据源

相关推荐
2301_765703149 分钟前
工具、测试与部署
jvm·数据库·python
Jackson@ML9 分钟前
Kimi K2.5横空出世!K2.5模型功能详解
python·大语言模型·kimi
BYSJMG14 分钟前
计算机毕设选题推荐:基于大数据的癌症数据分析与可视化系统
大数据·vue.js·python·数据挖掘·数据分析·课程设计
我材不敲代码22 分钟前
Python爬虫介绍——简单了解一下爬虫
开发语言·爬虫·python
naruto_lnq44 分钟前
Python日志记录(Logging)最佳实践
jvm·数据库·python
yuankoudaodaokou1 小时前
高帧率扫描如何重塑动态三维扫描与思看科技300fps解决方案
python·科技
rainbow68891 小时前
Python零基础到精通全攻略
python
毕设源码-朱学姐1 小时前
【开题答辩全过程】以 基于python网络安全知识在线答题系统为例,包含答辩的问题和答案
开发语言·python·web安全
2301_765703141 小时前
Python异步编程入门:Asyncio库的使用
jvm·数据库·python
Dxy12393102161 小时前
Python判断MySQL表是否存在,不存在则创建
python·mysql·adb