大家好,又見面了,我是你們的朋友全棧君。
Author:AXYZdong 自動化專業 工科男 有一點思考,有一點想法,有一點理性! [email protected],CSDN首發,
環境: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 這段時間數據爆棚,具體什麼原因嘛,你懂得(手動滑稽)
又一大佬開始接手,另一個腳本
# =============================================
# --*-- 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()
為了達到自己滿意的效果,搞了好長時間 剛開始是 x 軸標號的問題,圖片出來總是黑乎乎的一片,我以為是數據太多的問題,就沒有考慮了 上傳到博客後,發現坐標數值不對勁啊,和我預想的結果不一樣。就開始查找各種資料,最後還是在《Python 編程 從入門到實踐》中找到了解決辦法。 小白的我學習 Python,遇到了各種問題,慢慢地一個個解決,到達自己滿意的效果。
歡迎大佬批評指正
發布者:全棧程序員棧長,轉載請注明出處:https://javaforall.cn/151755.html原文鏈接:https://javaforall.cn