使用python讀取sqlit3並做圖

pip list查看本機的安裝的所有模塊
raw_input("按下 enter 鍵退出,其他任意鍵顯示...\n")
不換行輸出print x,


工具包名稱:pandas(暫時不支持Python3.7)
工具包網址:http://pandas.pydata.org/
工具包文檔:http://pandas.pydata.org/pandas-docs/stable/pandas.pdf

安裝工具包命令: pip install pandas

測試代碼:(numpy會被一起安裝,主要使用工具包中read_csv)
import pandas as pd
import numpy as np
data = pd.read_csv("./execl.csv")
print(data)
可以正常讀取csv的數據,成功
print(data.head(10)) 讀取前10行
使用DataFrame函數後,使用for indexs in data.index,發現indexs爲0的情況下,實際讀取的是csv中的第二行


工具包名稱:matplotlib
工具包網址:https://matplotlib.org/
工具包文檔:https://matplotlib.org/contents.html

安裝工具包命令: pip install matplotlib


工具包名稱:seaborn
工具包網址:http://seaborn.pydata.org/
工具包API :http://seaborn.pydata.org/api.html

安裝工具包命令: pip install seaborn


如何畫點線圖(真正的點和線)

#coding=utf-8
import pandas as pd
import pandas.io as sql
import numpy as np
import sqlite3
import matplotlib.pyplot as plt  
import seaborn as sns  
conn = sqlite3.connect('d:/sqlite')#打開本地sqlite數據庫
df = pd.read_sql_query("SELECT id,hs from tablename order by id desc limit 10;",conn)#查詢數據庫內容,pandas官網解釋Read SQL database table into a DataFrame
#print(df)#察看取出的數據
conn.close()#關閉數據庫連接

sns.set_style("whitegrid")#Seaborn有五個預設好的主題: darkgrid , whitegrid , dark , white ,和 ticks  默認: darkgrid
plt.figure()#顯示的圖尺寸,這裏不設置讓其自動
plt.plot(df.id.values,df.hs.values,'r.')#取id爲x軸,取hs爲y軸,r紅色,點是xy的焦點
plt.plot(df['id'],df['hs'])#點之間做連線
plt.xlabel('id')#在圖片上寫上x軸的名稱
plt.ylabel('hs')#在圖片上寫上y軸的名稱
plt.show()#顯示圖像

使用python讀取sqlit3並做圖


如何同時畫2根線?

conn.close()
ma5=df['hs'].rolling(window=5).mean()#對取出的df的hs列做5天的平均數

plt.plot(df.id.values,df.hs.values,'r.')
plt.plot(df.id.values,ma5)#X軸必須一樣的情況下,把ma5做爲Y軸
plt.plot(df['id'],df['hs'])

這是ma5的內容,看到前4個值都是NaN
使用python讀取sqlit3並做圖
再看下顯示的圖像,這裏把從數據庫裏取出的數量增加到50行,爲了體現被平均後的圖像

使用python讀取sqlit3並做圖


如何畫2點連線?
dflinex = [df.id[0],df.id[len(df.id)-1]]#line的x軸座標點
dfliney = [102,102 ]#line的y軸座標點
plt.plot(dflinex,dfliney)
圖像裏綠色的線就是2點連線
使用python讀取sqlit3並做圖


待續

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章