【Python数据可视化】超星学习通助手后台数据的可视化处理

【Python数据可视化】超星学习通助手后台数据的可视化处理Python数据可视化。

大家好,又见面了,我是你们的朋友全栈君。

Author:AXYZdong
自动化专业 工科男
有一点思考,有一点想法,有一点理性!
CSDN@AXYZdong,CSDN首发,更多精彩内容请前往 AXYZdong的博客

环境:Python 3.7
用到的库:matplotlib 和 csv

一、前期准备

安装 matplotlib 库,命令提示符栏输入

pip install matplotlib

安装的时候可能有点慢,耐心等待。

关于matplotlib 库的使用方法,可以参考:Matplotlib.pyplot 常用方法

二、获取数据

脚本网站:https://greasyfork.org/zh-CN/scripts

到超星助手统计数据下载 .csv文件,并保存在与python文件相同的目录下。

提醒:拿到数据后,把第一行的英文删掉,不然 datetime.strptime() 函数转换数据时会出现错误

三、可视化处理

# =============================================
# --*-- coding: utf-8 --*--
# @Time    : 2020-04-28
# @Author  : AXYZdong
# @CSDN    : https://blog.csdn.net/qq_43328313
# @FileName: demo_1.py
# @Software: Python3.7
# =============================================

import matplotlib.pyplot as plt     #导入库
from datetime import datetime       #导入模块datetime中的datetime类
import csv


date=[]                             #创建列表
installs=[]
update_checks=[]

with open('stats.csv', 'r') as f:   #提取stats.csv中的数据并保存在对应列表中
    reader = csv.reader(f)
     
    dates,installs = [],[]
    for row in reader:
        current_date = datetime.strptime(row[0],"%Y-%m-%d")  #包含日期信息的数据row[0]转为datetime对象
        dates.append(current_date)

        install = int(row[1])
        installs.append(install)
        
        update_checks.append(row[2])

plt.plot(dates,installs,color= 'red')  #采用条形图,颜色设置为红色

plt.title('the picture about xuexitong help installs', fontsize = 16)   #设置图片名称

plt.xticks(rotation=300)  #x轴标号旋转
plt.ylabel("", fontsize = 16)
plt.ylabel("Number", fontsize = 16)

plt.show()  

四、运行结果

一、折线图

在这里插入图片描述

二、条形图

仅修改一处代码即可

plt.bar(date,installs,color= 'red')      

在这里插入图片描述

五、数据说明

统计的数据为 2018-06-19 ~ 2020-04-13 的安装数。

可见:2020-03~2020-04 这段时间数据爆棚,具体什么原因嘛,你懂得(手动滑稽)

六、某助手停止维护后

又一大佬开始接手,另一个脚本
在这里插入图片描述

1、可视化处理

# =============================================
# --*-- coding: utf-8 --*--
# @Time    : 2020-04-28
# @Author  : AXYZdong
# @CSDN    : https://blog.csdn.net/qq_43328313
# @FileName: demo_2.py
# @Software: Python3.7
# =============================================

import matplotlib.pyplot as plt     #导入库
from datetime import datetime       #导入模块datetime中的datetime类
import csv


date=[]                             #创建列表
installs=[]
update_checks=[]

with open('stats1.csv', 'r') as f:   #提取stats1.csv中的数据并保存在对应列表中
    reader = csv.reader(f)
     
    dates,installs = [],[]
    for row in reader:
        current_date = datetime.strptime(row[0],"%Y-%m-%d")  #包含日期信息的数据row[0]转为datetime对象
        dates.append(current_date)

        install = int(row[1])
        installs.append(install)
        
        update_checks.append(row[2])

plt.plot(dates,installs,color= 'blue')  #采用条形图,颜色设置为蓝色

plt.title('the picture about xuexitong help installs', fontsize = 16)   #设置图片名称

plt.xticks(rotation=300)  #x轴标号旋转
plt.ylabel("", fontsize = 16)
plt.ylabel("Number", fontsize = 16)

plt.show()  

2、效果

在这里插入图片描述
在这里插入图片描述

总结

为了达到自己满意的效果,搞了好长时间
刚开始是 x 轴标号的问题,图片出来总是黑乎乎的一片,我以为是数据太多的问题,就没有考虑了
上传到博客后,发现坐标数值不对劲啊,和我预想的结果不一样。就开始查找各种资料,最后还是在《Python 编程 从入门到实践》中找到了解决办法。
小白的我学习 Python,遇到了各种问题,慢慢地一个个解决,到达自己满意的效果。

欢迎大佬批评指正 ? ? ?

看完就赞,养成习惯!!!^ _ ^ ❤️ ❤️ ❤️
码字不易,大家的支持就是我坚持下去的动力。点赞后不要忘了关注我哦!

「你可能还想看」系列文章:
小白如何入门Python?记我的Python初体验
揭开「pip不是内部或外部命令,也不是可运行的程序或批处理文件」的神秘面纱
【Python制作词云】分析QQ群聊信息,记录词频并制作词云
【Python制作词云】改变词云字体颜色
【Python】给PDF添加水印

520快到了,我用代码画了一幅画「可以送给自己喜欢的人」
「情人节快到了」“码”出礼物,一片“芯”意

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151755.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 验证码的原理及作用「建议收藏」

    验证码的原理及作用「建议收藏」验证码被广泛用于用户登录以及注册的校验,那么验证码的作用仅仅是进行校验吗?,或者说为什么会有验证码校验这一环节?验证码是目前大多网站所支持并使用于注册登录的。就在于其作用能有效防止恶意登录注册,验证码每次都不同,这就可以排除,用其他病毒或者软件自动申请用户及自动登陆.有效防止这种问题。这就是验证码的真正作用,能够防止别人进行恶意攻击,而且大家也会注意到一点,如果频繁发送验证码,用户请求注册…

    2022年7月14日
    13
  • 学c++还是学java就业「建议收藏」

    学c++还是学java就业「建议收藏」Java更偏向业务型开发,比如银行的xx管理系统,安卓手机的软件以及WEB等等。java更容易入手,学会用框架基本就能来开发,开发效率(完成的速度)相对高,当前相对C++更好就业,薪资平均水平相比C++略高(参考2014年谷歌统计数据)。C++,难度相对高,入手较难深入也难,它涉及的内容很多,特性很多,可以做一些考虑性能(并发,速度)的东西,比如各种后台服务,游戏的后台部分,C++主要更服务器打交道,当然你要用上MFC,QT等也能做界面的东西。前途还是钱途:当前的话,可能Java性价比更高。不过游戏,

    2022年7月17日
    14
  • HTTP与HTTPS的区别,详细介绍[通俗易懂]

    HTTP与HTTPS的区别,详细介绍[通俗易懂]目录HTTP与HTTPS介绍HTTPS和HTTP的主要区别客户端在使用HTTPS方式与Web服务器通信时的步骤CA证书的申请及其使用过程HTTPS的缺点SSL与TLS的区别?SSL/TLS历史SSL/TLS协议的基本过程HTTPS涉及的计算环节如何优化HTTPS的速度HTTP与HTTPS介绍超文本传输协议HTTP协议被用于在We…

    2022年6月14日
    41
  • 国内免费php mysql空间,[php mysql]国内有什么好的免备案免费php+mysql空间

    国内免费php mysql空间,[php mysql]国内有什么好的免备案免费php+mysql空间国内有什么好的免备案免费php+mysql空间问题补充:稳定点的,速度过得去就可以.谢谢●我一直在用”主机屋”提供的免费空间.稳定性可以运作几年了.不用备案.用了马上就知道好.百度搜索”主机屋”php+mysql实现无限级分类问题补充:php+mysql实现无限级分类●项目思路分析:一个PHP项目要用到分类,但不确定分几级,所以就想做成无限级分类。一开始想是按以前一样,数据库建4个值,如下:…

    2022年6月29日
    29
  • 熊猫烧香病毒简析[通俗易懂]

    熊猫烧香病毒简析[通俗易懂]熊猫烧香从2007年1月肆虐网络到现在。已经过了查不多4个年头了。病毒的作者李俊现在也从监狱里被放了出来。在当时熊猫烧香确实给大家一个意外,它采用了一种新的方式对计算机的程序和系统造成了很严重的破坏。 其实我的这篇文章也不叫什么分析,只是说简单的简析。我只是简单的对病毒的机

    2025年7月9日
    2
  • 拉氏变换应用_拉氏反变换公式表

    拉氏变换应用_拉氏反变换公式表由系统函数零、极点分别决定时域特性(一)零、极点分布与波形特征的对应的零、极点:典型情况极点分布与原函数波形对应关系极点位于s平面坐标原点,冲激响应为阶跃函数 极点位于s平面实轴上,冲激响应具有指数形式,正为指数增长,负为指数衰减 虚轴上共轭极点给出等幅振荡 极点落在s平面左平面内共轭极点对应衰减震荡(左平面衰减,共轭极点振荡)多重极点典型情况(一般几重极点就乘上t的几次方)位于s平面坐标原点的二阶或三阶极点分别给出时间函数为t或他(1/2)t^2 实轴上二阶极点给出t与指数函数的

    2025年7月9日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号